如何使用自动滚动制作水平滚动文本视图?
Posted
技术标签:
【中文标题】如何使用自动滚动制作水平滚动文本视图?【英文标题】:How to make Horizontal Scrollable Text View with Automated Scrolling? 【发布时间】:2021-10-03 00:52:25 【问题描述】:我只是 android Studio 的初学者,并且是从业余爱好开始的,为了学习它的基础知识,我尝试在 Android Studio(Kotlin) 中制作一个简单的计算器。
问题是,如果答案是长时间显示在文本视图框中,它会被切断......所以为了解决这个问题,我使用 xml 文件中的“水平滚动视图”使文本视图水平滚动, 但是现在的问题是当用户在视图满后输入文本时,它不会自动滚动到他输入的最后一位数字,而是他/她必须手动滚动到最后。这是显示结果的文本框的代码:
<HorizontalScrollView
android:id="@+id/horizontalScrollView"
android:layout_
android:layout_
<TextView
android:id="@+id/tvExpression"
android:layout_
android:layout_
android:background="#1C1C1C"
android:textColor="#FFFFFF"
android:textSize="27dp"
</HorizontalScrollView>`
能否请您告诉一种方法,以便每次向框添加新值时,它自动滚动到框的最右侧,以便用户可以看到他/她最后输入的值?
请帮帮我! 谢谢, 绍里亚
【问题讨论】:
【参考方案1】:最好删除HorizontalScrollView的一个标签,因为这样可以让textview更灵活的包含计算器的结果。 您还可以使用此属性选择 textView 的最大行数:
android:maxLines="select int number"
如果你想要一种方法来让 HorizontalScrollView 从末尾滚动 您可以在包含水平滚动视图的活动中使用此代码:
horizontalScrollView.postDelayed(
Runnable
horizontalScrollView.fullScroll(HorizontalScrollView.FOCUS_RIGHT) ,
100L
)
【讨论】:
你能告诉我怎么做吗? 上面的代码会在代码端,我的意思是在activity中使用horizontalScrollView这几行,然后运行会发现滚动是从最后开始的 我需要把它放在任何类或其他东西上吗? 在主Activity.kt中? 是的,放到包含这个视图的activity中(horizontalScrollView)以上是关于如何使用自动滚动制作水平滚动文本视图?的主要内容,如果未能解决你的问题,请参考以下文章