代码之家  ›  专栏  ›  技术社区  ›  Viva

始终显示一个按钮

  •  1
  • Viva  · 技术社区  · 12 年前

    我用xamarin创建了一个可滚动的表格布局。我希望屏幕底部始终显示一个按钮(帮助按钮),无论我是否滚动表格,都会显示该按钮。

    我把按钮放在一个相对的布局上。我如何做相对布局(在线性布局上),既不可滚动,又总是在屏幕上?

    这是我的代码:

    <?xml version="1.0" encoding="utf-8"?>
    <ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_below="@+id/linearImag">
    <LinearLayout
        android:orientation="vertical"
        android:minWidth="25px"
        android:minHeight="25px"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:id="@+id/linearLayout1">
        <TableLayout
            android:minWidth="25px"
            android:minHeight="25px"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:id="@+id/mytb">
            <TableRow
                android:minWidth="25px"
                android:minHeight="25px"
                android:id="@+id/tableRow2">
                <TextView
                    android:id="@+id/myav"
                    android:layout_width="97.0dp"
                    android:layout_column="0"
                    android:layout_height="32.0dp"
                    android:layout_marginBottom="2.0dp"
                    android:layout_marginTop="0.0dp"
                    android:layout_marginRight="0.0dp"
                    android:layout_marginLeft="0.0dp" />
                <Button
                    android:text="Help"
                    android:id="@+id/bhelp"
                    android:layout_column="3" />
            </TableRow>
            <TableRow
                android:minWidth="25px"
                android:minHeight="25px"
                android:id="@+id/tableRow1"
                android:layout_width="187.5dp"
                android:layout_height="48.0dp">
                <TextView
                    android:text="Code"
                    android:textStyle="normal|bold"
                    android:id="@+id/myt"
                    android:layout_column="0"
                    android:layout_width="105.7dp"
                    android:layout_height="34.0dp" />
                <TextView
                    android:text="Products"
                    android:maxLength="20"
                    android:textStyle="normal|bold"
                    android:layout_column="1"
                    android:id="@+id/myt"
                    android:layout_width="73.0dp"
                    android:layout_height="36.0dp"
                    android:layout_marginRight="0.0dp" />
                <TextView
                    android:text="Cantity"
                    android:textStyle="normal|bold"
                    android:id="@+id/myt"
                    android:layout_column="2"
                    android:layout_width="80.0dp"
                    android:layout_height="23.0dp"
                    android:layout_marginLeft="0.0dp" />
    
    
            </TableRow>
        </TableLayout>
        <FrameLayout
            android:minWidth="25px"
            android:minHeight="25px"
            android:layout_width="fill_parent"
            android:layout_height="103.5dp"
            android:id="@+id/frameLayout1">
            <LinearLayout
                android:orientation="horizontal"
                android:layout_gravity="bottom"
                android:minWidth="25px"
                android:minHeight="25px"
                android:layout_width="fill_parent"
                android:layout_height="fill_parent"
                android:id="@+id/linearLayout2">
                <Button
                    android:text="Save"
                    android:layout_gravity="bottom"
                    android:id="@+id/btnsave"
                    android:layout_width="wrap_content"
                    android:layout_height="fill_parent" />
            </LinearLayout>
        </FrameLayout>
    </LinearLayout>
    

    3 回复  |  直到 6 年前
        1
  •  2
  •   Yuvi    12 年前

    我已经发布了代码,并对您的代码进行了一些小的更改。由于ScrollView只有一个子限制,所以我使用了RelativeLayout。

    <?xml version="1.0" encoding="utf-8"?>
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent" >
    
        <ScrollView
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_below="@+id/linearImag" >
    
            <LinearLayout
                android:id="@+id/linearLayout1"
                android:layout_width="fill_parent"
                android:layout_height="fill_parent"
                android:minHeight="25px"
                android:minWidth="25px"
                android:orientation="vertical" >
    
                <TableLayout
                    android:id="@+id/mytb"
                    android:layout_width="fill_parent"
                    android:layout_height="fill_parent"
                    android:minHeight="25px"
                    android:minWidth="25px" >
    
                    <TableRow
                        android:id="@+id/tableRow1"
                        android:layout_width="187.5dp"
                        android:layout_height="48.0dp"
                        android:minHeight="25px"
                        android:minWidth="25px" >
    
                        <TextView
                            android:id="@+id/myt"
                            android:layout_width="105.7dp"
                            android:layout_height="34.0dp"
                            android:layout_column="0"
                            android:text="Code"
                            android:textStyle="normal|bold" />
    
                        <TextView
                            android:id="@+id/myt"
                            android:layout_width="73.0dp"
                            android:layout_height="36.0dp"
                            android:layout_column="1"
                            android:layout_marginRight="0.0dp"
                            android:maxLength="20"
                            android:text="Products"
                            android:textStyle="normal|bold" />
    
                        <TextView
                            android:id="@+id/myt"
                            android:layout_width="80.0dp"
                            android:layout_height="23.0dp"
                            android:layout_column="2"
                            android:layout_marginLeft="0.0dp"
                            android:text="Cantity"
                            android:textStyle="normal|bold" />
                    </TableRow>
                </TableLayout>
    
                <FrameLayout
                    android:id="@+id/frameLayout1"
                    android:layout_width="fill_parent"
                    android:layout_height="103.5dp"
                    android:minHeight="25px"
                    android:minWidth="25px" >
    
                    <LinearLayout
                        android:id="@+id/linearLayout2"
                        android:layout_width="fill_parent"
                        android:layout_height="fill_parent"
                        android:layout_gravity="bottom"
                        android:minHeight="25px"
                        android:minWidth="25px"
                        android:orientation="horizontal" >
    
                        <Button
                            android:id="@+id/btnsave"
                            android:layout_width="wrap_content"
                            android:layout_height="fill_parent"
                            android:layout_gravity="bottom"
                            android:text="Save" />
                    </LinearLayout>
                </FrameLayout>
            </LinearLayout>
        </ScrollView>
    
        <Button
            android:id="@+id/bhelp"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentBottom="true"
            android:layout_alignParentRight="true"
            android:layout_below="@+id/linearImag"
            android:layout_column="3"
            android:text="Help" />
    
    </RelativeLayout>
    
        2
  •  2
  •   Yuvi    12 年前

    您可以使用下面提供的代码, 在ScrollView中,您可以使用任何组件,如文本视图、表格布局等。。。 按钮总是显示在屏幕底部(帮助按钮),无论您是否滚动表格,按钮都会显示出来。

    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        tools:context=".MainActivity" >
    
    
        <ScrollView
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:layout_marginBottom="50dp">
    
            <TextView
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:text="@string/hello_world"
            android:layout_marginBottom="60dp"/>
       </ScrollView>
    
    
        <Button
            android:layout_width="100dp"
            android:layout_height="40dp"
            android:text="Help"
            android:layout_centerHorizontal="true"
            android:layout_alignParentBottom="true"
            android:layout_marginBottom="10dp"/>
    
    </RelativeLayout>
    
        3
  •  2
  •   Avijit    12 年前
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        tools:context=".MainActivity" >
    
    
        <ScrollView
            android:layout_width="fill_parent"
            android:layout_height="wrap_content">
    
            <LinearLayout
               android:layout_width="wrap_content"
               android:layout_height="wrap_content">
               //inner content here
            </LinearLayout>
       </ScrollView>
        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="your_text"
            android:layout_centerHorizontal="true"
            android:layout_alignParentBottom="true"/>
    
    </RelativeLayout>