我想要更改ListView的背景颜色,但不适用于侦听器OnLongClickListener。
监听程序OnItemLongClickListener可以工作,但为什么OnLongClickListener不工作?
代码:
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
/*
etc..
*/
ListView lv = (ListView)ret.findViewById(R.id.lun_list);
lv.setAdapter(oa);
lv.setBackgroundColor(Color.BLACK);
lv.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() {
@Override
public boolean onItemLongClick(AdapterView<?> adapterView, View view, int i, long l) {
showPopup();
return false;
}
});
lv.setOnLongClickListener(new View.OnLongClickListener() {
@Override
public boolean onLongClick(View view) {
showTest();
return false;
}
});
return ret;
}
private void showTest(){
FragmentManager fragmentManager = getActivity().getSupportFragmentManager();
getView().findViewById(R.id.lun_list).setBackgroundColor(Color.YELLOW);
}发布于 2015-07-30 17:59:14
您是否已将以下属性添加到列表视图中以处理OnLongClickListener,请设置android:longClickable="true"
发布于 2015-07-30 18:00:24
可以在java代码中使用listView.setLongClickable(true),也可以将属性android:longClickable:"true"添加到xml布局文件中的ListView
发布于 2015-07-30 18:21:19
避免了这个问题:
我将ListView设置为WrapContent Height,因此现在我可以在Fragment的背景中添加一个OnLongClickListener并执行我的事件。
https://stackoverflow.com/questions/31720504
复制相似问题