1. 程式人生 > >java.lang.NullPointerException:RelativeLayout.setAlpha(float)' on a null object reference

java.lang.NullPointerException:RelativeLayout.setAlpha(float)' on a null object reference

透明度的問題,困老了我好幾個小時,終於終於找到了解決辦法,再次記一下

 給控制元件新增透明度,之前寫過,後邊忘記了,再用的時候竟然報錯了,也回憶不起來了,到底少了哪步,哎,老阿姨了,記憶力下降了。

佈局裡面新增NestedScrollView與ViewPager,往上滑的時候ViewPager隱藏,title顯示,title的透明度變化情況:

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
    scorll.setOnScrollChangeListener(new View.OnScrollChangeListener() {
        @Override
        public void onScrollChange(View v, int scrollX, int scrollY, int oldScrollX, int oldScrollY) {
            if (viewLbt.getVisibility() == View.GONE) {
                if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
                    tvTransparent.setAlpha(1);//0是全透明
                    view_ztl.setAlpha(1);//0是全透明
                    rl_logo.setAlpha(1);

                }
            } else {
                if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
                    tvTransparent.setAlpha((float) scrollY / (float) 600);//0是全透明
                    view_ztl.setAlpha((float) scrollY / (float) 600);//0是全透明
                     //注::: 在這一定要這樣寫,不然會報錯relative_parent 它是佈局的id
                    relative_parent.findViewById(R.id.rl_logo).setAlpha((float) scrollY / (float) 600);
                }
            }
        }
    });
} else {
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
        tvTransparent.setAlpha(1);//0是全透明
        view_ztl.setAlpha(1);//0是全透明
    }
}