Gridview不会触发OnLongClickListener

时间:2012-10-30 16:55:09

标签: android android-layout android-gridview

我有一个空的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" />

3 个答案:

答案 0 :(得分:4)

如果您希望长按gridView上的某个项目,则应使用setOnItemLongClickListener

如果您希望能够长按gridView本身,您的代码似乎没问题。也许你已经在里面添加了一些观察事件的观点?如果是这样,您可以使用setOnTouchListener,或将gridView放在将捕获此事件的布局中。

答案 1 :(得分:0)

也许你的gridView在ListView中,然后事件由listview而不是gridview处理。

答案 2 :(得分:0)

如上所述,

setOnItemLongClickListener为我工作而不是setOnLongClickListener