我需要用户从listView中选择一个项目,然后程序可以根据所选的选项执行操作。
该程序不应该在没有选择的情况下前进。在下面的代码中,我得到一个错误,说" index"必须被宣布为最终,但这样我就无法改变它,我需要。 至于使程序保持输入,是否有更优雅的解决方案和无限循环(而(真)风格)?
int index=-1;
final String[] values = new String[ savesList.size() ];
for (int i=0; i < savesList.size(); i++) {
values[savesList.size()-1 - i] = "Name: " + fh.list()[ savesList.get(i) ].nameWithoutExtension() + "\nLast modified: " + new Date( fh.list()[i].lastModified());
}
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, android.R.id.text1, values);
saveList.setVisibility(View.VISIBLE);
saveList.setAdapter(adapter);
saveList.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
index = values.length - 1 - position;
System.out.println(index);
}
});
someMethod( index );
(...More Code...)
答案 0 :(得分:0)
你可以让index
成为最后一个并声明另一个变量来保存索引的值,并在必要时更改你的第二个变量。
final int index=0;
int temp=0;
在onItemClick()
temp=index;
现在您可以使用temp
并随时根据需要进行搜索。