我试图从我的 listView 中显示一个项目,我在 eclipse 上没有收到任何错误,但是如果我单击一个项目,我的应用程序会指出它正在关闭。
这是我使用 toast 的代码
private void registerClickCallback() {
ListView list1 = (ListView) findViewById(R.id.listView1);
list1.setOnItemClickListener(
new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View viewClicked, int postion, long id) {
TextView textView = (TextView) viewClicked;
String message = "This is the message: " + textView.getText().toString();
Toast.makeText(MainActivity.this, message, Toast.LENGTH_LONG).show();
}
});`
这是我列表的阵列适配器
`private class MyListAdapter extends ArrayAdapter<Messages>{
public MyListAdapter() {
super(MainActivity.this, R.layout.item_view, messages);
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
// make sure we have a view to work with
View itemView = convertView;
if (itemView == null){
itemView = getLayoutInflater().inflate(R.layout.item_view, parent, false);
}
// find the message to work with
Messages currentMessages = messages.get(position);
// fill the view for icon (The icon used in my view)
ImageView imageView = (ImageView)itemView.findViewById(R.id.item_icon);
imageView.setImageResource(currentMessages.getIconID());
// the message, setting the message written to the message on my view
TextView textMessage = (TextView) itemView.findViewById(R.id.item_message);
textMessage.setText(currentMessages.getMessage());
// the sender, filling the sender to the sender on my view
TextView textSender = (TextView) itemView.findViewById(R.id.item_sender);
textSender.setText(currentMessages.getSender());
return itemView; // getting the item view back
}
} // custom adapter ends`
我不知道问题出在哪里,任何帮助将不胜感激