2

在我的应用程序中,当触摸列表视图时,我需要打开一个图像,当调用 Action_UP 时,我需要释放图像。这里我的问题是,我需要在 5 秒后按下项目,然后我会打开图像,但是当我使用 onTouch 时事件只是我触摸列表视图图像将打开。我需要增加触摸事件的时间请任何人帮助我吗?

提前致谢。

4

4 回答 4

1

在适配器类中的 ListView 的 onItemClickListener 中放置一个处理程序(在 getView 函数中):

row.setOnClickListener(new OnClickListener() {

public void onClick(View v) {

    Handler handler = new Handler();
    handler.postDelayed(new Runnable() {
        @Override
        public void run() {
        }
    }, 5000);

}

});

于 2013-08-23T04:57:55.173 回答
0

注意:不要在 listview 上设置 OnItemClickListener()。

您可以通过在列表适配器中做一些技巧来实现这一点。

转到您的列表适配器并在 getView() 方法中。

@Override
    public View getView(int position, View convertView, ViewGroup parent) {


       convertView.setOnLongClickListener(new OnLongClickListener() {

        //your code

    @Override
    public boolean onLongClick(View arg0) {
        //do your code to open image.
        return true;
    }
    });
        return convertView;
    }
于 2013-08-23T05:03:22.320 回答
0

您可以使用setOnItemLongClickListener()列表视图。下面给出一个例子:

lv.setOnItemLongClickListener(new OnItemLongClickListener() {

            public boolean onItemLongClick(AdapterView<?> arg0, View arg1,
                    int pos, long id) {
                // TODO Auto-generated method stub

                Log.v("long clicked","pos"+" "+pos);

                return true;
            }
        }); 

我认为这会有所帮助...

于 2013-08-23T04:58:04.767 回答
0

您可以使用GestureDetector。只需声明一个新的 GestureDetector 并在 onTouchEvent 方法中通过 EventType 创建一个 switch 子句。如果是 ACTION_DOWN 打开一个图像,如果是 ACTION_UP 则释放它

于 2013-08-23T04:59:24.260 回答