Android 查看初始化和显示问题
Android View initialize and display problems
我尝试在按下 FloatingButton 时显示 "custom" 视图,但是视图出了点问题(例如 Google 当您点击 FloatingButton 时的议程,例如 "fade in" 查看).
这是我的视图(它位于 ViewPager 和 Fab 按钮之间):
<View
android:id="@+id/shadowView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#F2FFFFFF"
android:visibility="gone" />
这是方法:
public void animateFAB() {
if (isFabOpen) {
//animation classic 1
fabNormal.startAnimation(rotate_backward);
fabShare.startAnimation(fab_close);
fabFavorit.startAnimation(fab_close);
fabShare.setClickable(false);
fabFavorit.setClickable(false);
isFabOpen = false;
mShadowView.setVisibility(View.VISIBLE);
} else {
//animation classic 1
fabNormal.startAnimation(rotate_forward);
fabShare.startAnimation(fab_open);
fabFavorit.startAnimation(fab_open);
fabShare.setClickable(true);
fabFavorit.setClickable(true);
isFabOpen = true;
mShadowView.setVisibility(View.GONE);
}
}
这就是问题所在:
java.lang.NullPointerException: Attempt to invoke virtual method 'void android.view.View.setVisibility(int)' on a null object reference
嗯,我没有找到解决这个问题的方法,有人可以帮助我吗?
谢谢
好的,这是解决方案:
mShadowView = findViewById(R.id.shadowView);
fabShare.setOnClickListener(this);
fabFavorit.setOnClickListener(this);
我只是把View的声明放在了setOnClickListener之前
我尝试在按下 FloatingButton 时显示 "custom" 视图,但是视图出了点问题(例如 Google 当您点击 FloatingButton 时的议程,例如 "fade in" 查看).
这是我的视图(它位于 ViewPager 和 Fab 按钮之间):
<View
android:id="@+id/shadowView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#F2FFFFFF"
android:visibility="gone" />
这是方法:
public void animateFAB() {
if (isFabOpen) {
//animation classic 1
fabNormal.startAnimation(rotate_backward);
fabShare.startAnimation(fab_close);
fabFavorit.startAnimation(fab_close);
fabShare.setClickable(false);
fabFavorit.setClickable(false);
isFabOpen = false;
mShadowView.setVisibility(View.VISIBLE);
} else {
//animation classic 1
fabNormal.startAnimation(rotate_forward);
fabShare.startAnimation(fab_open);
fabFavorit.startAnimation(fab_open);
fabShare.setClickable(true);
fabFavorit.setClickable(true);
isFabOpen = true;
mShadowView.setVisibility(View.GONE);
}
}
这就是问题所在:
java.lang.NullPointerException: Attempt to invoke virtual method 'void android.view.View.setVisibility(int)' on a null object reference
嗯,我没有找到解决这个问题的方法,有人可以帮助我吗?
谢谢
好的,这是解决方案:
mShadowView = findViewById(R.id.shadowView);
fabShare.setOnClickListener(this);
fabFavorit.setOnClickListener(this);
我只是把View的声明放在了setOnClickListener之前