1.看见你的宽度啥都用 sp 就蛋疼
2.贴代码就贴全, ImageView 的父布局都不贴,你怎么知道一定是这个 imageView 的问题? 或许就是你 item 的布局就错误了呢,导致 imageView 无处显示呢
3.上面是布局,下面是代码,一个字乱,何况代码就光一个监听,你就知道其他地方都正确?或许我们累死累活的找 bug ,结果发现就因为你这句语句没调用呢
4.ImageView image = (ImageView ) layout.getChildAt (0 ); 很少见到这种写法,哪天你把图片放后面了,然后就报错了
5.RelativeLayout layout =(RelativeLayout ) cityListView.getAdapter ().getView (i, null, null ); 如同 @
ssynhtn 所说,你这根本就是创建了一个新的 view ,你显示它的图片,并没有卵用。
6.如果让我写这个,我会将需要显示的数据放在一个 List 集合中,其元素就是每一行需要显示的图片( id ),文字,其中有个属性为是否显示图片,默认为不显示。 将 List 集合传给 adapter 。当点击按钮的时候,修改 list 内部数据,调用 adapter 的 notifyOnDataChange 。 这样逻辑在 activiy 里实现,显示在 adpter 实现。