我有ImageView
。我希望此ImageView
的背景与布尔值相关。
布尔值是一个静态值,可以更改项目中的每个位置,但GridView
只在ImageView
中。
这意味着当布尔值发生变化时,y = rand(20,3);
aa= unidrnd(2,20,3) - 1;
val = ( aa & y<1.366e-04) | (~aa & y<8.298e-04);
aa(val) = ~aa(val);
的背景也应该改变。
答案 0 :(得分:1)
请检查此答案
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@android:drawable/ic_dialog_dialer" android:state_pressed="true"/>
<item android:drawable="@android:drawable/ic_dialog_map" />
</selector>
答案 1 :(得分:1)
在适配器中(这是一个示例)
public View getView(int position, View convertView, ViewGroup parent) {
ImageView imageView;
if (convertView == null) {
imageView = new ImageView(mContext);
imageView.setLayoutParams(new GridView.LayoutParams(85, 85));
imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);
}
else
{
imageView = (ImageView) convertView;
}
// Checking your boolean
if (yourBoolean) {
imageView.setImageResource(AAA);// AAA is your background image
} else {
imageView.setImageResource(BBB);// BBB is another your background image
}
return imageView;
}
在您的活动中:
GridView gridview = (GridView) findViewById(R.id.gridview);
gridview.setAdapter(new YourAdapter(this));
在改变布尔变量的方法中:
gridView.getAdapter().notifyDataSetChanged();