我的问题很简单:如何使用长按来让用户从ListView
中选择项目?到目前为止,我只知道如何检测“短”点击并采取适当的措施。
另外,我想在所选项目上显示一个复选标记。怎么办?
答案 0 :(得分:2)
然后您需要手动记住选择的内容。您需要通过更改通知列表,并在适配器的getView方法中执行某些操作。
使用Contextual ActionBar模式一次与所有项目进行交互是一个好习惯,请参阅here。
答案 1 :(得分:2)
它与onClickListener
的工作方式相同,而只是检查onLongClickListener
。所以你有这种结构:
your_view.setOnLongClickListener(new View.OnLongClickListener() {
public boolean onLongClick(View v) {
...
}
});
如果你想显示一个复选标记,我认为最好的方法是定义你自己的行布局,你只需要在右侧定义行的内容CheckBox
。这样,您可以指定新的布局,而不是传递ArrayAdapter
某些Android布局,而不是:
your_adapter = new ArrayAdapter(context, R.layout.your_new_layout, initial_rows);
答案 2 :(得分:1)
https://stackoverflow.com/questions/12090394/i-cant-get-longclick-to-work-on-listactivity回答:
// Optional, added if done from ListActivity (or possibly ListFragment)
ListView lv = getListView();
// Set on this if overriding OnItemLongClickListener, otherwise use an anonymous inner function
lv.setOnItemLongClickListener(this);