您好我的视图中有一个imageView。在我的活动中,我在onCreate中创建一个ArrayList,如果你单击imageView,将添加一个名称。因此,如果列表包含此名称,则将从drawable文件夹加载填充的星形图像。这是我的问题:我怎么写你点击imageView,其他图像将被加载?因此如果填充的星星应该加载空星。
final ImageView img = (ImageView) rootView.findViewById(R.id.imageView1);
if (starredList.contains(txt1[p])){
img.setImageResource(R.drawable.ic_action_important);
}
else{
img.setImageResource(R.drawable.ic_action_not_important);
}
img.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View view)
{
Object tag = img.getTag();
int id = tag == null ? -1 :(Integer) tag;
if (id==R.drawable.ic_action_important){
img.setImageResource(R.drawable.ic_action_not_important);
}
if (id==R.drawable.ic_action_not_important){
img.setImageResource(R.drawable.ic_action_important);
starredList.add(txt1[p]);
Toast.makeText(getActivity(), txt1[p]+" wurde ihren Favoriten hinzugefügt", Toast.LENGTH_LONG).show();
}
}
});
提前谢谢!
答案 0 :(得分:0)
使用ToggleButton
并通过drawable
处理selector
。
使用selector
文件夹中名为favorite_button_image.xml
的{{1}}创建XML drawable,并在以下XML中将您的drawable添加为drawable
,如下所示...
item
将此<?xml version="1.0" encoding="UTF-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/ic_action_important"
android:state_checked="true"/>
<item android:drawable="@drawable/ic_action_not_important"
android:state_checked="false"/>
</selector>
设置为favorite_button_image
中的drawable,如下所示...并将此ToggleButton
添加到ToggleButton
而不是Layout XML
。你会得到你想做的事。
ImageView