如何为列表视图设置onClickListener,以便每个列表视图项将您带到不同的意图?
答案 0 :(得分:2)
如果您要扩展ListActivity,那么您可以执行以下操作:
@Override
protected void onListItemClick(ListView l, View v, int position, long id) {
String item = (String) getListAdapter().getItem(position);
Intent intent = new Intent(present_activity.this,target_activty.class);
intent.putExtras("key",item);
startActivity(intent);
}
希望这会有所帮助.. :)
答案 1 :(得分:0)
如果您通过适配器填充列表,则可以使用onListItemClick(),它将为您提供listView,单击的视图以及列表中的位置。
从那里你可以使用位置开关来开始不同的活动。或者,如果列表视图更具动态性,您可以在列表中保存视图,以保存要在其标记中打开的活动。 (view.setTag(“acivityName”))并使用类似的东西来启动活动:
String activityName = view.getTag();
i = new Intent(v.getContext(), Class.forName(activityName));
startActivity(i);
答案 2 :(得分:0)
像这样设置监听器:
myListView.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView parent, View view, int position, long id) {
String item = (String) myListView.getAdapter().getItem(position);
Intent intent = new Intent(getBaseContext(), MyActivity.class);
intent.putExtras("name", item);
startActivity(intent);
}
});
修改强>
您使用在侦听器中收到的position
来获取该位置列表中的项目。然后,您可以将该项目与Intent
捆绑在一起,然后将其发送到Activity
(请参阅上面的代码putExtra
)