【发布时间】:2016-10-17 14:26:16
【问题描述】:
所以我用 5-6 个项目制作了这个列表视图。我已经设置了 onItemClickListener 方法。我想获得点击的listView的位置。例如,如果在第一名,我应该获得相应的位置并将其保存在变量中。如果我点击第二个,我应该得到相应的位置等等。我是初学者,请解释一下。
final ListView listView = (ListView) findViewById(R.id.listView);
ArrayList<String> abcd = new ArrayList<>();
abcd.add("Number One");
abcd.add("Number Two");
abcd.add("Number Three");
abcd.add("Number Four");
abcd.add("Number Five");
abcd.add("Number Six")
ArrayAdapter<String> adapter = new ArrayAdapter<>(this,R.layout.list_view);
listView.setAdapter(adapter);
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
int position = listView.getItemIdAtPosition(position);
Toast.makeText(MainActivity.this, "Clicked"+position , Toast.LENGTH_SHORT).show();
}
});
【问题讨论】:
-
i是被点击项的位置。只需阅读方法文档,您就会知道 -
int i 是位置,所以像这样敬酒
Toast.makeText(MainActivity.this, "Clicked"+i ,Toast.LENGTH_SHORT).show(); -
onItemClick...{String item = abcd.get(position);
-
我刚才试了一下,应用程序一直在崩溃 Idk 为什么。有什么想法吗?