开发者

ScrollView wrapping table row does not scroll to show all content

I am trying to have a single row in a table be scrollable. I.e, I am setting up a table with, say, two rows; adding two, say, views to the first row; then as the third element in the row am placing a horizontal scrollview. Then as a child to the scrollview I place a final table row which contains a bunch of textViews.

The problem I am having is that the scrollview refuses to scroll over far enough to display all of its contents. Any ideas?

I've attached sample xml below:

Thanks, James

<?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">
<TableLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:id="@+id/tableLayout1">
    <TableRow android:id="@+id/tableRow1" android:layout_width="wrap_content" android:layout_height="wrap_content">
        <View android:layout_width="100dp" android:layout_height="100dp" android:background="#FF33AA22"></View>
        <View android:layout_width="50dp" android:background="#FFAABB33" android:layout_height="100dp"></View>
        <HorizontalScrollView android:id="@+id/horizontalScrollView1" android:layout_width="wrap_content" android:layout_height="wrap_content">
            <TableRow android:layout_width="wrap_content" android:id="@+id/tableRow2" android:layout_height="wrap_content">
                <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/textView1" android:textAppearance="?android:attr/textAppearanceMedium" a开发者_Go百科ndroid:text="TextView 1"></TextView>
                <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="TextView 2" android:id="@+id/textView2" android:textAppearance="?android:attr/textAppearanceMedium"></TextView>
                <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/textView4" android:textAppearance="?android:attr/textAppearanceMedium" android:text="TextView 3"></TextView>
                <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/textView3" android:textAppearance="?android:attr/textAppearanceMedium" android:text="TextView 4"></TextView>
                <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/textView5" android:textAppearance="?android:attr/textAppearanceMedium" android:text="TextView 5"></TextView>
                <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/textView6" android:textAppearance="?android:attr/textAppearanceMedium" android:text="TextView 6"></TextView>
                <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/textView7" android:textAppearance="?android:attr/textAppearanceMedium" android:text="TextView 7"></TextView>
            </TableRow>
        </HorizontalScrollView>
    </TableRow>
    <TableRow android:id="@+id/tableRow3" android:layout_width="wrap_content" android:layout_height="wrap_content"></TableRow>
    <TableRow android:id="@+id/tableRow4" android:layout_width="wrap_content" android:layout_height="wrap_content"></TableRow>
</TableLayout>

</LinearLayout>


Your HorizontalScrollView should have a LinearLayout inside in which you can add your TextViews, not a TableRow. Hope this helps.

Code:

<HorizontalScrollView android:id="@+id/horizontalScrollView1" android:layout_width="fill_parent" android:layout_height="wrap_content">
    <LinearLayout android:id="@+id/linearLayout1" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="horizontal">
        <TextView android:text="TextView" android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content"></TextView>
        <TextView android:text="TextView" android:id="@+id/textView3" android:layout_width="wrap_content" android:layout_height="wrap_content"></TextView>
    </LinearLayout>
</HorizontalScrollView>


Try to set gravity "Left" for LinearLayout for last example.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜