我有一个计数器,我想让这个计数器的结果决定ImageView
:的可见性
ImageView image_A_wrong = (ImageView) findViewById(R.id.IVimage_a_wrong);
ImageView的XML:
<ImageView android:src="@drawable/small_wrong"
android:id="@+id/IVimage_a_wrong"
android:layout_width="48dp"
android:layout_height="48dp"
android:layout_marginLeft="-50dp"
android:padding="0dp"
android:visibility="invisible"/>
我试过几件事。。这是我试图实现的一些伪代码
@Override
public void setVisible(boolean visible) {
super.setVisible(visible);
if (score == 0 ){
image_A_wrong.getVisibility(View.VISIBLE);
} else if(score == 1){
image_A_wrong.getVisibility(View.VISIBLE);
}
}
我在这里、tuts和Adroid的Dev页面上看了看,但似乎找不到/理解适用于我需求的解决方案。。。thnx
您应该使用setVisibility()方法,而不是getVisibility():
imageview.setVisibility(View.VISIBLE);
因此View#VISIBLE将其标记为可见,View#INVISIBLE将其标记为由不可见,View#GONE完全隐藏视图。这就是你需要对你的代码做的:
@Override
public void setVisible(boolean visible) {
super.setVisible(visible);
if (score == 0 ){
//Hide the view
image_A_wrong.setVisibility(View.INVISIBLE);
} else if(score == 1){
//Show the view
image_A_wrong.setVisibility(View.VISIBLE);
}
}
我建议阅读View#setVisibility文档以获得更好的想法。
编辑:我也不知道View#setVisible(布尔值)来自哪里,你在上面的代码中显示的。据我所知,这不是View
中的一个函数。。。