我得到运行时错误异常:
java.lang.ClassCastException: android.widget.TwoLineListItem cannot be cast to android.widget.TextView
我的 Activity 扩展了 Activity而不是ListActivity ,这是我的布局结构:
<LinearLayout ...> <ListView ...></ListView> </LinearLayout>
爪哇:
ListView lv1 = (ListView) findViewById(R.id.listViewXMLdata);
ArrayAdapter<String> arrAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_2,
android.R.id.text2, getResources().getStringArray(R.array.countries));
lv1.setAdapter(arrAdapter);
lv1.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
lView.getItemAtPosition(position);
String itemSelected = ((TextView) view).getText().toString();
Toast.makeText(getApplicationContext(), "Clicked Position Number " + position + ": " + itemSelected ,
Toast.LENGTH_SHORT)
.show();
}
});
我唯一主要关心的是在我的列表中获取字符串(选择的项目)。
注意 1:我没有在任何数据库上工作。
注意 2:我已经尝试将其转换为 CharSequence itemSelected = ((TextView) view).getText().toString() 但仍然出现运行时错误。
仅当我开始选择列表中的项目时才会发生运行时错误。