gpt4 book ai didi

android - 添加安卓 :textIsSelectable causes TextView to autoscroll

转载 作者:太空狗 更新时间:2023-10-29 14:44:06 24 4
gpt4 key购买 nike

<ScrollView
android:layout_width="match_parent"
android:layout_height="match_parent">

<HorizontalScrollView
android:layout_width="match_parent"
android:layout_height="wrap_content">

<TextView
android:id="@+id/solutions"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:lineSpacingMultiplier="1.2"
android:textAppearance="@style/TextAppearance.AppCompat"
android:textIsSelectable="true"
android:textSize="18sp"
tools:text="1. 1+2+3 = 6"/>
</HorizontalScrollView>
</ScrollView>

android:textIsSelectable="true" 添加到 TextView 后,TextView 将自动滚动到底部。但是我不想要这种行为。

最佳答案

对于有相同问题的人:您有两个 Scrollview,您可能需要尝试一下或使用 NestedScrollView。最后这对我有用:

android:descendantFocusability="afterDescendants

在我的 TextView 的父级上

试试这个:

<ScrollView
android:layout_width="match_parent"
android:layout_height="match_parent">

<HorizontalScrollView
android:descendantFocusability="afterDescendants"
android:layout_width="match_parent"
android:layout_height="wrap_content">

<TextView
android:id="@+id/solutions"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:lineSpacingMultiplier="1.2"
android:textAppearance="@style/TextAppearance.AppCompat"
android:textIsSelectable="true"
android:textSize="18sp"
tools:text="1. 1+2+3 = 6"/>
</HorizontalScrollView> </ScrollView>

更新:虽然这似乎有效,但实际上并没有。 View 只是随机跳转,所以在我的测试中一开始看起来还不错。

我找不到合适的解决方案,所以我使用了肮脏的技巧。我的 TextView 现在是“不可选择的”。在我的 fragment 的 onCreateView() 中,我在新线程中等待 1.5 秒,并在 fragment View 完全构建后从 UI 线程更新 TextView 。这样 textview 就不会重新聚焦,scrollview 也不会跳来跳去:

        Runnable x = () -> {
try {
Thread.sleep(1500);
if(getActivity()!=null){

getActivity().runOnUiThread(() -> {
textview.setFocusable(true);
textview.setFocusableInTouchMode(true);
textview.setTextIsSelectable(true);
});
}
} catch (InterruptedException e) {
e.printStackTrace();
}
};
new Thread(x).start();

关于android - 添加安卓 :textIsSelectable causes TextView to autoscroll,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42760908/

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