无法在列表视图中使用findViewById从列表视图访问textView onItemClick
问题描述:
我能够显示列表视图从一个array.But当我点击任何行应用程序崩溃说ClassCaste异常android.widget.linearlayout。 我的XML:无法在列表视图中使用findViewById从列表视图访问textView onItemClick
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content" android:layout_height="wrap_content">
<ImageView android:id="@+id/icon" android:layout_height="wrap_content"
android:src="@drawable/icon" android:layout_width="22px"
android:layout_marginTop="4px" android:layout_marginRight="4px"
android:layout_marginLeft="4px">
</ImageView>
<TextView android:text="@+id/TextView01" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:id="@+id/label"
android:textSize="30px"></TextView>
特定的代码中可能存在的错误:
ArrayAdapter<String> countryAdapter=new ArrayAdapter<String>(this,R.layout.rowlayout,R.id.label,countries);
setListAdapter(countryAdapter);
ListView lv = getListView();
lv.setTextFilterEnabled(true);
lv.setOnItemClickListener(this);
和的onclick方法,其中我试图显示从列表视图中clickd项目敬酒:
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
// TODO Auto-generated method stub
Toast.makeText(getApplicationContext(), ((TextView)linearlayout.findViewById(R.id.label)).getText(), Toast.LENGTH_SHORT).show();
}
当我点击任何列表项目时,应用程序崩溃。
有什么建议吗? 感谢
答
更换
((TextView)linearlayout.findViewById(R.id.label)).getText()
通过
((TextView)view.findViewById(R.id.label)).getText()
希望工程:)
什么ü在这个部分的? Toast.makeText(getApplicationContext(),((TextView)linearlayout.findViewById(R.id.label))。getText(),Toast.LENGTH_SHORT).show(); 'onItemClick'方法中的 – Venky
,你从哪里得到'linearLayout'引用? – anirvan
试图访问线性布局的子节点(已经声明),然后将其转换为textview.my dumb mind :( – Alok