我用 SimpleAdapter 作为 ListView 的适配器,自定义了一个布局,里面有一个 ImageView 和一个 TextView ,我想要实现 ListView 的每一项都是文字加图片的效果。布局文件如下: <ImageView
android:id="@+id/ItemImage"
android:layout_alignParentRight="true"
android:layout_marginRight="20sp"
android:layout_width="30sp"
android:layout_height="30sp"
android:visibility="gone"
/>
<TextView
android:id="@+id/ItemText"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="20sp"
android:textSize="20sp" />
我设置了 android:visibility="gone",是想开始的时候让图片不显示,在需要显示的地方再显示。然后我点击某个按钮后,想让此图片显示。所以我先遍历 ListView ,然后得到这个 ImageView 对象,再设置它的可见性,代码如下( set 是一个按钮):
set.setOnClickListener (new OnClickListener () {
@Override
public void onClick (View v ) {
//全选遍历 ListView 的选项,每个选项就相当于布局配置文件中的 RelativeLayout
for (int i = 0; i < cityListView.getCount (); i++){
RelativeLayout layout =
(RelativeLayout ) cityListView.getAdapter ().getView (i, null, null );
ImageView image = (ImageView ) layout.getChildAt (0 );
image.setImageResource (R.drawable.delete );
image.setVisibility (View.VISIBLE );
}
}
});
可是都设置完成后,先前隐藏的图片还是都没显示,不知道什么愿因,
ps :我的目的是让 ListView 里面被隐藏的图片显示出来,不知道是不是应该这样做
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.