簡體   English   中英

TableLayout內的ScrollView

[英]ScrollView inside a TableLayout

我的整個活動是一個TableLayout 我希望TableRow的前幾對在ScrollView之外並且始終可見。 那么我想ScrollView開始,並有10 TableRow S中的內ScrollView 然后,我希望在ScrollView下面有幾個TableRow ,它們中的按鈕也總是可見並且不會滾動。

下面是我的代碼的大致示意圖。

<TableLayout>    
    <TableRow></TableRow>                       
    <TableRow></TableRow>        
    <TableRow>
        <ScrollView
            <TableLayout
                <TableRow></TableRow>
                <TableRow></TableRow>
            </TableLayout>
    </ScrollView>
   </TableRow></TableRow>
   <TableRow>
       <Button></Button>    
       <Button></Button>
   </TableRow>
</TableLayout>

下面是我的實際代碼。 滾動很多代碼,以防萬一您希望看到它。

<TableLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/tableLayout"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:stretchColumns="1"
    android:shrinkColumns="0"
    android:orientation="vertical"
    android:paddingLeft="16dp"
    android:paddingRight="16dp"
    android:paddingTop="70dp"
    android:paddingBottom="50dp"
    android:background="@drawable/scroll" >    

    <TableRow
        android:id="@+id/header"
        android:layout_width="0dip"
        android:layout_height="wrap_content"
        android:layout_weight="1" >

        <TextView
            android:id="@+id/category"
            android:layout_height="wrap_content"
            android:layout_width="0px"
            android:layout_weight="1"
            android:textStyle="bold"
            android:textSize="15sp"
            android:paddingTop="10dp"
            android:gravity="center_horizontal" />

        <TableLayout
            android:layout_width="0dip"
            android:layout_height="wrap_content"
            android:layout_weight="1" >

            <TableRow
                android:layout_width="0dip"
                android:layout_height="wrap_content"
                android:layout_weight="1" >

                <TextView
                    android:id="@+id/points"
                    android:layout_width="0dip"
                    android:layout_height="wrap_content"
                    android:layout_weight=".25"
                    android:textSize="10sp"
                    android:gravity="left" 
                    android:textStyle="bold" />
            </TableRow>

            <TableRow
                android:layout_width="0dip"
                android:layout_height="wrap_content"
                android:layout_weight="1" >

                <TextView
                    android:id="@+id/percentage"
                    android:layout_width="0dip"
                    android:layout_height="wrap_content"
                    android:layout_weight=".3"
                    android:textSize="10sp"
                    android:gravity="left"
                    android:textStyle="bold" />
            </TableRow>

            <TableRow
                android:layout_width="0dip"
                android:layout_height="wrap_content"
                android:layout_weight="1" >

                <TextView
                    android:id="@+id/total_score"
                    android:layout_width="0dip"
                    android:layout_height="wrap_content"
                    android:layout_weight=".45"
                    android:textSize="10sp"
                    android:gravity="left"
                    android:textStyle="bold" />
            </TableRow>
        </TableLayout>
    </TableRow>

    <View 
        android:layout_width="fill_parent"
        android:layout_height="1dp"       
        android:background="#000001" />

    <TableRow
        android:id="@+id/row3"
        android:layout_width="0dip"
        android:layout_height="wrap_content"
        android:layout_weight="1" >

        <TextView
            android:id="@+id/imageColumn"
            android:layout_width="0dip"
            android:layout_height="wrap_content"
            android:layout_weight="0" />

        <TextView
            android:id="@+id/questionColumn"
            android:layout_width="0dip"
            android:layout_height="wrap_content"
            android:layout_weight=".45"
            android:textSize="12sp"
            android:textStyle="bold|italic"
            android:gravity="center_vertical" />

        <TextView
            android:id="@+id/answerColumn"
            android:layout_width="0dip"
            android:layout_height="wrap_content"
            android:layout_weight=".3"
            android:textSize="12sp"
            android:textStyle="bold|italic"
            android:gravity="center_vertical" />

        <TextView
            android:id="@+id/verseColumn"
            android:layout_width="0dip"
            android:layout_height="wrap_content"
            android:layout_weight=".25"
            android:textSize="12sp"
            android:textStyle="bold|italic"
            android:gravity="center_vertical" />
    </TableRow>

    <TableRow
        android:id="@+id/row3a"
        android:layout_width="0dip"
        android:layout_height="wrap_content"
        android:layout_weight="1" >

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

            <TableLayout
                android:layout_width="0dip"
                android:layout_height="wrap_content"
                android:layout_weight="1" >

                <TableRow
                    android:layout_width="0dip"
                    android:layout_height="wrap_content"
                    android:stretchColumns="0,1,2,3"
                    android:layout_weight="1" >

                    <ImageView
                        android:id="@+id/q1Image"
                        android:layout_width="10dp"
                        android:layout_height="10dp"
                        android:layout_gravity="center_vertical" />

                    <TextView
                        android:id="@+id/q1Question"
                        android:layout_width="0dip"
                        android:layout_height="wrap_content"
                        android:layout_weight=".45"
                        android:textSize="10sp"
                        android:paddingLeft="2dp"
                        android:paddingRight="2dp"
                        android:layout_gravity="center_vertical" />

                    <TextView
                        android:id="@+id/q1Answer"
                        android:layout_width="0dip"
                        android:layout_height="wrap_content"
                        android:layout_weight=".3"
                        android:textSize="10sp"
                        android:layout_gravity="center_vertical" />

                    <TextView
                        android:id="@+id/q1Verse"
                        android:layout_width="0dip"
                        android:layout_height="wrap_content"
                        android:layout_weight=".25"
                        android:textSize="10sp"
                        android:layout_gravity="center_vertical" />
                </TableRow>

                <View 
                    android:layout_width="fill_parent"
                    android:layout_height="1dp"       
                    android:background="#C2BEBF" />

                <TableRow
                    android:id="@+id/row5"
                    android:layout_width="0dip"
                    android:layout_height="wrap_content"
                    android:stretchColumns="0,1,2,3"
                    android:layout_weight="1" >

                    <ImageView
                        android:id="@+id/q2Image"
                        android:layout_width="10dp"
                        android:layout_height="10dp"
                        android:layout_gravity="center_vertical" />

                    <TextView
                        android:id="@+id/q2Question"
                        android:layout_width="0dip"
                        android:layout_height="wrap_content"
                        android:layout_weight=".45"
                        android:textSize="10sp"
                        android:paddingLeft="2dp"
                        android:paddingRight="2dp"
                        android:layout_gravity="center_vertical" />

                    <TextView
                        android:id="@+id/q2Answer"
                        android:layout_width="0dip"
                        android:layout_height="wrap_content"
                        android:layout_weight=".3"
                        android:textSize="10sp"
                        android:layout_gravity="center_vertical" />

                    <TextView
                        android:id="@+id/q2Verse"
                        android:layout_width="0dip"
                        android:layout_height="wrap_content"
                        android:layout_weight=".25"
                        android:textSize="10sp"
                        android:layout_gravity="center_vertical" />
                </TableRow>

                <View 
                    android:layout_width="fill_parent"
                    android:layout_height="1dp"       
                    android:background="#C2BEBF" />

                <TableRow
                    android:id="@+id/row6"
                    android:layout_width="0dip"
                    android:layout_height="wrap_content"
                    android:stretchColumns="0,1,2,3"
                    android:layout_weight="1" >

                    <ImageView
                        android:id="@+id/q3Image"
                        android:layout_width="10dp"
                        android:layout_height="10dp"
                        android:layout_gravity="center_vertical" />

                    <TextView
                        android:id="@+id/q3Question"
                        android:layout_width="0dip"
                        android:layout_height="wrap_content"
                        android:layout_weight=".45"
                        android:textSize="10sp"
                        android:paddingLeft="2dp"
                        android:paddingRight="2dp"
                        android:layout_gravity="center_vertical" />

                    <TextView
                        android:id="@+id/q3Answer"
                        android:layout_width="0dip"
                        android:layout_height="wrap_content"
                        android:layout_weight=".3"
                        android:textSize="10sp"
                        android:layout_gravity="center_vertical" />

                    <TextView
                        android:id="@+id/q3Verse"
                        android:layout_width="0dip"
                        android:layout_height="wrap_content"
                        android:layout_weight=".25"
                        android:textSize="10sp"
                        android:layout_gravity="center_vertical" />
                </TableRow>

                <View 
                    android:layout_width="fill_parent"
                    android:layout_height="1dp"       
                    android:background="#C2BEBF" />

                <TableRow
                    android:id="@+id/row7"
                    android:layout_width="0dip"
                    android:layout_height="wrap_content"
                    android:stretchColumns="0,1,2,3"
                    android:layout_weight="1" >

                    <ImageView
                        android:id="@+id/q4Image"
                        android:layout_width="10dp"
                        android:layout_height="10dp"
                        android:layout_gravity="center_vertical" />

                    <TextView
                        android:id="@+id/q4Question"
                        android:layout_width="0dip"
                        android:layout_height="wrap_content"
                        android:layout_weight=".45"
                        android:textSize="10sp"
                        android:paddingLeft="2dp"
                        android:paddingRight="2dp"
                        android:layout_gravity="center_vertical" />

                    <TextView
                        android:id="@+id/q4Answer"
                        android:layout_width="0dip"
                        android:layout_height="wrap_content"
                        android:layout_weight=".3"
                        android:textSize="10sp"
                        android:layout_gravity="center_vertical" />

                    <TextView
                        android:id="@+id/q4Verse"
                        android:layout_width="0dip"
                        android:layout_height="wrap_content"
                        android:layout_weight=".25"
                        android:textSize="10sp"
                        android:layout_gravity="center_vertical" />
                </TableRow>

                <View 
                    android:layout_width="fill_parent"
                    android:layout_height="1dp"       
                    android:background="#C2BEBF" />

                <TableRow
                    android:id="@+id/row8"
                    android:layout_width="0dip"
                    android:layout_height="wrap_content"
                    android:stretchColumns="0,1,2,3"
                    android:layout_weight="1" >

                    <ImageView
                        android:id="@+id/q5Image"
                        android:layout_width="10dp"
                        android:layout_height="10dp"
                        android:layout_gravity="center_vertical" />

                    <TextView
                        android:id="@+id/q5Question"
                        android:layout_width="0dip"
                        android:layout_height="wrap_content"
                        android:layout_weight=".45"
                        android:textSize="10sp"
                        android:paddingLeft="2dp"
                        android:paddingRight="2dp"
                        android:layout_gravity="center_vertical" />

                    <TextView
                        android:id="@+id/q5Answer"
                        android:layout_width="0dip"
                        android:layout_height="wrap_content"
                        android:layout_weight=".3"
                        android:textSize="10sp"
                        android:layout_gravity="center_vertical" />

                    <TextView
                        android:id="@+id/q5Verse"
                        android:layout_width="0dip"
                        android:layout_height="wrap_content"
                        android:layout_weight=".25"
                        android:textSize="10sp"
                        android:layout_gravity="center_vertical" />
                </TableRow>

                <View 
                    android:layout_width="fill_parent"
                    android:layout_height="1dp"       
                    android:background="#C2BEBF" />

                <TableRow
                    android:id="@+id/row9"
                    android:layout_width="0dip"
                    android:layout_height="wrap_content"
                    android:stretchColumns="0,1,2,3"
                    android:layout_weight="1" >

                    <ImageView
                        android:id="@+id/q6Image"
                        android:layout_width="10dp"
                        android:layout_height="10dp"
                        android:layout_gravity="center_vertical" />

                    <TextView
                        android:id="@+id/q6Question"
                        android:layout_width="0dip"
                        android:layout_height="wrap_content"
                        android:layout_weight=".45"
                        android:textSize="10sp"
                        android:paddingLeft="2dp"
                        android:paddingRight="2dp"
                        android:layout_gravity="center_vertical" />

                    <TextView
                        android:id="@+id/q6Answer"
                        android:layout_width="0dip"
                        android:layout_height="wrap_content"
                        android:layout_weight=".3"
                        android:textSize="10sp"
                        android:layout_gravity="center_vertical" />

                    <TextView
                        android:id="@+id/q6Verse"
                        android:layout_width="0dip"
                        android:layout_height="wrap_content"
                        android:layout_weight=".25"
                        android:textSize="10sp"
                        android:layout_gravity="center_vertical" />
                </TableRow>

                <View 
                    android:layout_width="fill_parent"
                    android:layout_height="1dp"       
                    android:background="#C2BEBF" />

                <TableRow
                    android:id="@+id/row10"
                    android:layout_width="0dip"
                    android:layout_height="wrap_content"
                    android:stretchColumns="0,1,2,3"
                    android:layout_weight="1" >

                    <ImageView
                        android:id="@+id/q7Image"
                        android:layout_width="10dp"
                        android:layout_height="10dp"
                        android:layout_gravity="center_vertical" />

                    <TextView
                        android:id="@+id/q7Question"
                        android:layout_width="0dip"
                        android:layout_height="wrap_content"
                        android:layout_weight=".45"
                        android:textSize="10sp"
                        android:paddingLeft="2dp"
                        android:paddingRight="2dp"
                        android:layout_gravity="center_vertical" />

                    <TextView
                        android:id="@+id/q7Answer"
                        android:layout_width="0dip"
                        android:layout_height="wrap_content"
                        android:layout_weight=".3"
                        android:textSize="10sp"
                        android:layout_gravity="center_vertical" />

                    <TextView
                        android:id="@+id/q7Verse"
                        android:layout_width="0dip"
                        android:layout_height="wrap_content"
                        android:layout_weight=".25"
                        android:textSize="10sp"
                        android:layout_gravity="center_vertical" />
                </TableRow>

                <View 
                    android:layout_width="fill_parent"
                    android:layout_height="1dp"       
                    android:background="#C2BEBF" />

                <TableRow
                    android:id="@+id/row11"
                    android:layout_width="0dip"
                    android:layout_height="wrap_content"
                    android:stretchColumns="0,1,2,3"
                    android:layout_weight="1" >

                    <ImageView
                        android:id="@+id/q8Image"
                        android:layout_width="10dp"
                        android:layout_height="10dp"
                        android:layout_gravity="center_vertical" />

                    <TextView
                        android:id="@+id/q8Question"
                        android:layout_width="0dip"
                        android:layout_height="wrap_content"
                        android:layout_weight=".45"
                        android:textSize="10sp"
                        android:paddingLeft="2dp"
                        android:paddingRight="2dp"
                        android:layout_gravity="center_vertical" />

                    <TextView
                        android:id="@+id/q8Answer"
                        android:layout_width="0dip"
                        android:layout_height="wrap_content"
                        android:layout_weight=".3"
                        android:textSize="10sp"
                        android:layout_gravity="center_vertical" />

                    <TextView
                        android:id="@+id/q8Verse"
                        android:layout_width="0dip"
                        android:layout_height="wrap_content"
                        android:layout_weight=".25"
                        android:textSize="10sp"
                        android:layout_gravity="center_vertical" />
                </TableRow>

                <View 
                    android:layout_width="fill_parent"
                    android:layout_height="1dp"       
                    android:background="#C2BEBF" />

                <TableRow
                    android:id="@+id/row12"
                    android:layout_width="0dip"
                    android:layout_height="wrap_content"
                    android:stretchColumns="0,1,2,3"
                    android:layout_weight="1" >

                    <ImageView
                        android:id="@+id/q9Image"
                        android:layout_width="10dp"
                        android:layout_height="10dp"
                        android:layout_gravity="center_vertical" />

                    <TextView
                        android:id="@+id/q9Question"
                        android:layout_width="0dip"
                        android:layout_height="wrap_content"
                        android:layout_weight=".45"
                        android:textSize="10sp"
                        android:paddingLeft="2dp"
                        android:paddingRight="2dp"
                        android:layout_gravity="center_vertical" />

                    <TextView
                        android:id="@+id/q9Answer"
                        android:layout_width="0dip"
                        android:layout_height="wrap_content"
                        android:layout_weight=".3"
                        android:textSize="10sp"
                        android:layout_gravity="center_vertical" />

                    <TextView
                        android:id="@+id/q9Verse"
                        android:layout_width="0dip"
                        android:layout_height="wrap_content"
                        android:layout_weight=".25"
                        android:textSize="10sp"
                        android:layout_gravity="center_vertical" />
                </TableRow>

                <View 
                    android:layout_width="fill_parent"
                    android:layout_height="1dp"       
                    android:background="#C2BEBF" />

                <TableRow
                    android:id="@+id/row13"
                    android:layout_width="0dip"
                    android:layout_height="wrap_content"
                    android:stretchColumns="0,1,2,3"
                    android:layout_weight="1" >

                    <ImageView
                        android:id="@+id/q10Image"
                        android:layout_width="10dp"
                        android:layout_height="10dp"
                        android:layout_gravity="center_vertical" />

                    <TextView
                        android:id="@+id/q10Question"
                        android:layout_width="0dip"
                        android:layout_height="wrap_content"
                        android:layout_weight=".45"
                        android:textSize="10sp"
                        android:paddingLeft="2dp"
                        android:paddingRight="2dp"
                        android:layout_gravity="center_vertical" />

                    <TextView
                        android:id="@+id/q10Answer"
                        android:layout_width="0dip"
                        android:layout_height="wrap_content"
                        android:layout_weight=".3"
                        android:textSize="10sp"
                        android:layout_gravity="center_vertical" />

                    <TextView
                        android:id="@+id/q10Verse"
                        android:layout_width="0dip"
                        android:layout_height="wrap_content"
                        android:layout_weight=".25"
                        android:textSize="10sp"
                        android:layout_gravity="center_vertical" />
                </TableRow>
            </TableLayout>
        </ScrollView>
    </TableRow>

    <TableRow
        android:id="@+id/row14"
        android:layout_width="0dip"
        android:layout_height="wrap_content"
        android:stretchColumns="0,1"
        android:layout_weight="1" >

        <Button 
            android:id="@+id/mainmenuBtn"
            android:layout_width="0dip"
            android:layout_height="wrap_content"
            android:layout_weight=".33"
            android:textSize="10sp" />

        <Button 
            android:id="@+id/highscoresBtn"
            android:layout_width="0dip"
            android:layout_height="wrap_content"
            android:layout_weight=".33"
            android:textSize="10sp" />
        <Button 
            android:id="@+id/playBtn"
            android:layout_width="0dip"
            android:layout_height="wrap_content"
            android:layout_weight=".34"
            android:textSize="10sp" />
    </TableRow>
</TableLayout>

下面是其輸出的顯示。 在嘗試添加ScrollView ,它全部顯示正確。 我嘗試添加ScrollView的原因是因為文本太多,我不得不使字體大小非常小以適合所有內容,但由於字體太小而無法讀取。 然后,我決定使其成為ScrollView並增大文本大小。

在此處輸入圖片說明

那是很多寫作,所以希望它有意義!

最好是將整個活動包裝在LinearLayout中,然后使用三個中間TableLayout的滾動視圖來具有三個單獨的TableLayouts,這是一種更好的方法。

  • 采取父級相對布局
  • 在頂部有一個線性布局,可以封裝幾行它取決於您是選擇表格布局還是多個線性布局也可以完成工作
  • 然后在底部使用另一個線性按鈕,其中包含您需要的按鈕
  • 然后將listview放在這些滾動條之間。

我會更喜歡listview而不是scrollview,因為它可以簡化代碼復雜性。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM