我已经为一个ListView行定义为:无法使一个项目的ImageView的ListView中无形
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<TextView
android:id="@+id/menutext"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:textSize="24sp"
android:layout_alignParentLeft="true"/>
<ImageView
android:id="@+id/icon"
android:layout_width="40dip"
android:layout_height="40dip"
android:src="@drawable/lock"
android:layout_gravity="right"
android:layout_alignParentRight="true"/>
</LinearLayout>
我为ListView适配器在onCreate()
listView.setAdapter(new ArrayAdapter<String>(this, R.layout.send_menu_row, R.id.menutext, items));
设置我有5个在每一行上都有文本和图像。在onResume()
中,我想让第一行的ImageView
隐形。
@Override
protected void onResume()
{
super.onResume();
LinearLayout linLayout = (LinearLayout) listView.getAdapter().getView(0, null, null);
ImageView v = (ImageView) linLayout.getChildAt(1);
v.setVisibility(View.INVISIBLE);
}
但它不改变可见性。有人可以帮助我吗?
我试着改变方向...仍然不会隐形,你确定“隐藏图像不应该这样做吗?”我不明白为什么。 – rajath 2011-04-08 12:19:17
我不知道为什么不知道为什么你不应该使用setVisibility。 – 2011-04-08 13:03:06
佩德罗,我完全理解为什么要使用getView。谢谢你的全面解释。但你也说“或使用透明图像” - 我看到的问题是我无法改变onResume()中的任何内容,为什么会发生这个特殊问题? – rajath 2011-04-08 16:36:54