我有一个空的gridview填充tablelayout中的列,我想长按gridview并快速弹出快速动作。
空gridview不会触发longpress事件。
gridTue.setOnLongClickListener(new OnLongClickListener() {
@Override
public boolean onLongClick(View v) {
// TODO Auto-generated method stub
return false; //I've breackpoint this line to test if it fires or not
}
});
XML:
<GridView
android:id="@+id/gridTue"
android:numColumns="1"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="center"
android:longClickable="true"
android:background="@android:color/background_light" />
答案 0 :(得分:4)
如果您希望长按gridView上的某个项目,则应使用setOnItemLongClickListener。
如果您希望能够长按gridView本身,您的代码似乎没问题。也许你已经在里面添加了一些观察事件的观点?如果是这样,您可以使用setOnTouchListener,或将gridView放在将捕获此事件的布局中。
答案 1 :(得分:0)
也许你的gridView在ListView中,然后事件由listview而不是gridview处理。
答案 2 :(得分:0)
setOnItemLongClickListener
为我工作而不是setOnLongClickListener
。