在我的应用程序中,顶部包含ListView,底部包含TextView。我想自动滚动TextView中的文本。但它不滚动,我还提交了下面的布局xml代码
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:descendantFocusability="blocksDescendants">
<ListView android:id="@+id/android:list"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1" />
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/hello"
android:singleLine="true"
android:scrollHorizontally="true"
android:ellipsize="marquee"
android:focusable="true"
android:focusableInTouchMode="true" />
</LinearLayout>
感谢您的解决方案
答案 0 :(得分:1)
滚动问题的解决方案是在horizontalScrollview中添加文本视图。
当你将下面的textview添加到ListView时,如果listView高度超过设备高度,你将无法使用textView,所以我建议你将LinearView的LinearLayout父亲和LinearLayout和HorizontalScrollView的RelativeLayout父亲。让LinearLayouts Params为width-&gt; fill-Parent和layout-height = fill-parent,以及textView和HorizontalLayout的Params为width = fill-parent,height = wrap-content,并将bottom与父对齐。
按某些代码更新:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
<LinearLayout android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:descendantFocusability="blocksDescendants">
<ListView android:id="@+id/android:list"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_above="@+id/scrollView" />
</LinearLayout>
<HorizontalScrollView android:id="@+id/scrollView"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_align_parent_bottom="true">
<TextView
android:layout_width="wrap_conetent"
android:layout_height="wrap_content"
android:text="@string/hello"
android:singleLine="true"
/>
</HorizontalScrollView>
</RelativeLayout>
答案 1 :(得分:1)
在ListView中设置属性android:scrollingCache="true"
<ListView android:id="@+id/android:list"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:scrollingCache="true"
android:layout_weight="1" />