gpt4 book ai didi

android - TextView 中的滚动条

转载 作者:太空狗 更新时间:2023-10-29 16:24:55 25 4
gpt4 key购买 nike

我只是不想使用 ScrollView。所以我有一个启用了垂直滚动条的 TextView 。

<TextView
android:id="@+id/tv_service_ticketinfo_details"
android:layout_width="fill_parent"
android:layout_height="150dp"
android:textColor="@color/black"
android:autoLink="web"
android:scrollbars="vertical"
android:text="empty"
android:background="@drawable/custom_shape_grey">
</TextView>

问题是,滚动条只能用于包含网络链接的文本。对于其他文本,我看到一个滚动条,但无法滚动。

我无法解释。你呢?

更新:

另一个奇怪的事情:一旦我设置了带有链接的文本,我就可以用另一个没有链接的文本替换它,并且 textView 保持可滚动

最佳答案

所以我认为问题在于 TextViews 不会自动滚动,只是因为您设置了 android:scrollbars。您必须设置 ScrollingMovementMethod。

但是,当您使用 autoLink 并找到链接时,android 框架将为您设置 MovementMethod。这就是行为不同的原因。

有两种解决方案适合我。

设置文本后,强制移动方法为支持链接和滚动的方法。

final TextView output = (TextView) findViewById(R.id.output);
output.setText(content);
// ensure that text will scroll with or without linked text
output.setMovementMethod(LinkMovementMethod.getInstance());

或者在将文本添加到 TextView 之前设置移动方法,假设是纯文本。如果 autoLink 检测到链接,它将自行更改移动方法。

final TextView output = (TextView) findViewById(R.id.t_output);
// ensure that text defaults to scrollable
output.setMovementMethod(ScrollingMovementMethod.getInstance());
output.setText(content);

(仅供引用:我正在使用 android:autoLink="all")

关于android - TextView 中的滚动条,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4489843/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com