0

我有一个 Listview,其中有 3-4 个文本视图。我正在使用 BaseAdapter 方式来膨胀 xml。所有的文本视图都是单行的。我想让 textview 水平滚动。我试图将 textview 放在 Horizo​​ntalScrollview 中。好吧,那确实滚动了textview,但后来我无法获得listview的点击事件。

有没有其他方法可以使文本视图水平滚动?

4

4 回答 4

4

我可以通过将此行添加到 xml 文件 android:descendantFocusability="blocksDescendants" 中的第一个 RelativeLayout 来解决此问题。这样,没有孩子会有焦点,因此水平滚动条也可以工作,listview 项目点击也可以工作。它对我有用。不管怎样,谢谢大家。

于 2011-04-27T03:24:33.560 回答
0

您可以尝试使用 TextView 类的ellipsize属性。如果将其设置为marquee文本应在获得焦点时自动滚动。

于 2011-04-26T13:21:21.890 回答
0

AFAIK 没有简单的方法可以做到这一点。

问题是滚动视图消耗所有触摸事件。为了解决这个问题,应该确保水平滚动视图只消耗“水平”移动事件。

首先你应该实现你自己的滚动视图。然后覆盖该视图的 onTouchEvent() ,使其仅消耗“水平多于垂直”的手势,并为列表视图留下“垂直”手势。

于 2011-04-26T13:20:16.970 回答
0

为什么没有人使用TextView.setMovementMethod(ScrollingMovementMethod.getInstance())with android:scrollHorisontally="true"

于 2013-05-07T07:05:27.860 回答