Android imageView的setVisibility(View.VISIBLE)不工作
我已将imageView的可见性设置为默认状态 现在,我想让它在以下(我的代码)条件变为真时可见。我已经检查了该条件是否变为真,我的代码setVisibility(View.visible)也会执行,但我的UI上没有任何更改Android imageView的setVisibility(View.VISIBLE)不工作,android,imageview,android-imageview,visibility,Android,Imageview,Android Imageview,Visibility,我已将imageView的可见性设置为默认状态 现在,我想让它在以下(我的代码)条件变为真时可见。我已经检查了该条件是否变为真,我的代码setVisibility(View.visible)也会执行,但我的UI上没有任何更改 @Override public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) { addBottomDots(position);
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
addBottomDots(position);
if(position == layouts.length-1){
imageView.setVisibility(View.VISIBLE);
imageView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
startActivity(new Intent(MainActivity.this,AlarmActivity.class));
}
});
}
}
我的ImageView的XML
<ImageView
android:id="@+id/startImageView"
android:layout_width="80dp"
android:layout_height="40dp"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
android:visibility="gone"
app:srcCompat="@drawable/starthere" />
问题:执行我的代码后,可见性没有改变意味着它仍然不可见问题是,您没有使用UI线程:
Activity act = (Activity)context;
act.runOnUiThread(new Runnable(){
@Override
public void run() {
-----
imageView.setVisibility(View.VISIBLE);
imageView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
startActivity(new Intent(MainActivity.this,AlarmActivity.class));
}
});
-----
} });
问题是,您没有使用UI线程:
Activity act = (Activity)context;
act.runOnUiThread(new Runnable(){
@Override
public void run() {
-----
imageView.setVisibility(View.VISIBLE);
imageView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
startActivity(new Intent(MainActivity.this,AlarmActivity.class));
}
});
-----
} });
你能按照下面的步骤告诉我吗
xml文件中删除可见性代码
。将下面的代码放在setContentview之后
。
imageView.setVisibility(View.INVISIBLE)代码>
图像视图
,请将下面的代码放入单击侦听器
imageView.setVisibility(View.VISIBLE)代码>
可见性消失
和可见性不可见
View.GONE
:此视图不可见,并且不占用任何空间用于布局
视图。不可见
:此视图不可见,但仍会占用版面空间。您能否按照以下步骤进行操作并通知我
xml文件中删除可见性代码
。将下面的代码放在setContentview之后
。
imageView.setVisibility(View.INVISIBLE)代码>
图像视图
,请将下面的代码放入单击侦听器
imageView.setVisibility(View.VISIBLE)代码>
可见性消失
和可见性不可见
View.GONE
:此视图不可见,并且不占用任何空间用于布局
视图。不可见
:此视图不可见,但仍会占用版面空间。如果单击它,onClick方法会调用吗?@SeanStayn如果它(图像视图)对我不可见,我如何检查它单击侦听器不是问题,我将管理它。您可以将可见性设置为在XML中可见。它只用于测试,不管代码是否执行。此外,您还可以从XML中删除可见性行,并将代码更改为“imageView.setVisibility(View.GONE)”。您可以检查问题是在您的方法中还是在其他地方。@SeanStayn我刚刚在我的活动的setContentView之后调用了imageView.setVisibility(View.VISIBLE),但也有同样的问题。请参阅更多代码的要点,如果单击它,可能会突出显示任何缺点,onClick方法会调用吗?@SeanStayn如果它(图像视图)对我不可见,我如何检查它单击侦听器不是问题,我将管理它。您可以将可见性设置为在XML中可见。它只用于测试,不管代码是否执行。此外,您还可以从XML中删除可见性行,并将代码更改为“imageView.setVisibility(View.GONE)”。您可以检查问题是在您的方法中还是在其他地方。@SeanStayn我刚刚在我的活动的setContentView之后调用了imageView.setVisibility(View.VISIBLE),但也有同样的问题,这可能会突出任何缺点