短/长按 ListView 的一项

Posted

技术标签:

【中文标题】短/长按 ListView 的一项【英文标题】:Short/Long press in a item of ListView 【发布时间】:2014-10-24 13:15:49 【问题描述】:

我有一个包含一些项目的 ListView,我希望在制作 itemClick(短按)和 itemLongClick(长按)时得到不同的响应:

       list.setOnItemClickListener(new AdapterView.OnItemClickListener() 
           @Override
           public void onItemClick(AdapterView<?> parent, View view, int position, long id) 
               //play file
           
       );

       list.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() 
           @Override
           public boolean onItemLongClick(AdapterView<?> parent, View view, int position, long id) 
               //Message 
               Toast.makeText(getBaseContext(), "FILE: "+itemsFiles.get(position).getName(), Toast.LENGTH_LONG).show();
               return false;
                  
       );

当我短按 (onItemClick()) 时,我的应用程序运行良好并且可以播放文件。 我的问题是当我长按(onItemLongClick())时,因为它出现了带有 Toast 的消息,但它也播放了文件,在这种情况下我不想播放文件......我怎样才能正确解决它区分这两种情况?

非常感谢。

【问题讨论】:

-1 不阅读文档:请查看AdapterView.OnItemLongClickListener 的文档,它应该返回什么以及为什么? 尝试在 onItemLongClick 方法中返回 'true'。 @Selvin 我很抱歉这个愚蠢的问题。我向您保证,我已阅读文档,但我不明白该方法返回的内容:如果回调消耗了长按,则为 true,否则为 false由于您的生硬回应,请仔细阅读并意识到错误。 【参考方案1】:

你可能想看看这个教程:http://android.konreu.com/developer-how-to/click-long-press-event-listeners-list-activity/

【讨论】:

以上是关于短/长按 ListView 的一项的主要内容,如果未能解决你的问题,请参考以下文章

Android 对 ListView 的一项使用 NumberFormat

listview 如何总让最后一项选中?????

安卓--ListView

ListView 长按动画

关于andoird listView的问题 多个listView 添加长按事件

转android: 长按删除listview的item