Android:setOnLongClickListener()不可靠

时间:2013-06-25 23:18:54

标签: android android-layout android-listview android-view android-ui

我使用setOnLongClickListener()添加了一个长按一下监听器。通常,按预期调用长按侦听器。但是,有时长时间点击会显示中止(视图会突出显示,但即​​使仍在按下,也会显示非视觉效果)。这似乎发生在视图层次结构的其他部分正在更新时(进度条,计数器,动画等)。

是否有任何特定的内容可以中断或中止长时间点击?

2 个答案:

答案 0 :(得分:0)

这似乎是由宽度TextViewandroid:layout_width="wrap_content")引起的。在用户开始长时间点击之后但在长时间点击持续时间过去之前,显示的文本偶尔会发生变化,从而阻止调用者被调用。标签的宽度变化会触发布局过程,从而使长按无效。

我们能够通过确保视图在文本更改中保持固定宽度来解决问题。

答案 1 :(得分:-1)

您可以在新的可运行的

中更新UI
  

final Runnable runnable = new Runnable(){       public void run()       {          updateYourUIHere();       }   };

你的onLongClickListener也不会崩溃

相关问题