我有一个TextView,定义如下:
<TextView
android:id="@+id/play_info"
android:layout_width="0dip"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@color/play_info_background"
android:ellipsize="none"
android:maxLines="8"
android:orientation="vertical"
android:scrollbars="none"
android:singleLine="false"
android:textColor="@color/play_info_text_color"
android:textSize="@dimen/play_info_font_size"
android:overScrollMode="never" >
</TextView>
我将TextView设置为可在代码中滚动,如下所示:
cardInfo = (TextView) play.findViewById(R.id.play_info);
cardInfo.setMovementMethod(new ScrollingMovementMethod());
TextView滚动,但不是很平滑,就像ScrollView中的任何内容一样。 我希望它顺利滚动。
我已经尝试将TextView(带有滚动禁用)放在ScrollView中,但这与它所包含的TableRow的高度相混淆,并且似乎没有办法纠正它。
答案 0 :(得分:0)
你可能缺少焦点属性,Textview没有聚焦,所以它不滚动。
<TextView
android:id="@+id/title_itemcount"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:focusable="true"
android:focusableInTouchMode="true"
android:maxLines="3"
android:padding="4dp"
android:scrollbars="vertical"
android:textColor="@android:color/background_dark" />
希望它有帮助...:)
答案 1 :(得分:0)
问题是,如果您想要“平滑滚动”,则必须将TextView
放在ScrollView
中。当你这样做时,你就不能再这样做了
将TextView
的高度设置为“match_parent”。例如,当你需要一个用文本动态填充的大型TextBox时,
但没有重新调整大小。当您尝试将ScrollView
的属性设置为“match_parent”时,子TextView
仍会包含内容。
我能够这样做:
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@android:drawable/edit_text">
<ScrollView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@null"
android:gravity="bottom"
android:singleLine="false"
android:typeface="serif"/>
</ScrollView>
</RelativeLayout>
RelativeLayout
容器,用作新的TextView
,具有所需的背景,原始TextView
,背景设置为null。所以当TextView
扩展,添加新文本,就像文本卷增加一样。如果ScrollView
。
您可能还需要停用TextView
的滚动功能,以避免在某些情况下与ScrollView
的滚动发生冲突。