我将imageView的可见性设置为默认情况下已消失 .
现在,我希望在下面(我的代码)条件成立时使其可见 . 我已检查条件是否成立,我的代码setVisibility(View.VISIBLE)也会执行但我的UI上没有任何变化 .
@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" />
Problem: After execution of my code the visibility is not changing means it remain invisible
2 回答
问题是,您不使用UI线程:
你能按照以下步骤告诉我吗?
从
xml file
删除可见性代码 . 放在下面的代码after setContentview
.imageView.setVisibility(View.INVISIBLE);
现在,如果您想再次看到
imageView
,请将以下代码放在click listener
中 .imageView.setVisibility(View.VISIBLE);
这应该适合你 . 它有效,因为
visibility gone
和visibility invisible
之间存在差异View.GONE
:此视图不可见,并且不需要任何空间用于布局 .View.INVISIBLE
:此视图不可见,但仍然占用了布局空间 .