如何使此滚动布局有效?

时间:2012-06-25 14:48:43

标签: android user-interface

我目前正在尝试让我的UI有一个标题栏,一个底部的按钮栏,中间有一个ScrollView。我可以得到一些零碎的工作,但是一旦我得到一个不同的工作,旧的部分回到不显示。这是左边我的用户界面的图片,我想要它在右边的样子......(对不起,我在MS Paint中编辑了它:P)

总而言之,我希望将版本和类型字段移动到XML文件中的其他TextViews的空间,我希望两个按钮都显示在底栏上。

enter image description here

编辑:

底部的按钮大小相同,我在MS Paint制作盒子方面不太有天赋

编辑2: 抱歉....这是我的XML文件

<?xml version="1.0" encoding="UTF-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:weightSum="1.0" >
    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content" >
            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:gravity="center_horizontal"
                android:text="SN : " />

            <TextView
                android:id="@+id/serialNumberView"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:gravity="center_horizontal" />

            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:gravity="center_horizontal"
                android:text="Ver : " />

            <TextView
                android:id="@+id/versionView"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:gravity="center_horizontal" />

            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:gravity="center_horizontal"
                android:text="Type : " />

            <TextView
                android:id="@+id/typeView"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:gravity="center_horizontal" />

    </LinearLayout>

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

            <LinearLayout
                android:layout_width="wrap_content"
                android:layout_height="wrap_content" 
                android:orientation="vertical"
                android:layout_weight="1">


                    <CheckBox
                        android:id="@+id/floatCheck"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="Float" />

                    <CheckBox
                        android:id="@+id/tripCheck"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="Trip" />

                    <CheckBox
                        android:id="@+id/closeCheck"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="Close" />

                    <CheckBox
                        android:id="@+id/blockedCheck"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="Blocked" />

                    <CheckBox
                        android:id="@+id/hardTripCheck"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="Hard Trip" />

                    <CheckBox 
                        android:id="@+id/phaseAngleCheck"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="Phase angle wrong for closing" />

                    <CheckBox
                        android:id="@+id/diffVoltsCheck"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="Differential volts too low" />

                    <CheckBox
                        android:id="@+id/networkVoltsCheck"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="Network volts too low to close" />

                    <CheckBox
                        android:id="@+id/usingDefaultsCheck"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="Using Defaults( Reprogram )" />

                    <CheckBox
                        android:id="@+id/relaxedCloseActiveCheck"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="Relaxed Close Active" />

                    <CheckBox
                        android:id="@+id/commBoardDetectedCheck"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="Comm Board Detected" />

                    <CheckBox 
                        android:id="@+id/antiPumpBlock"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="Anti-Pump Block" />

                    <CheckBox
                        android:id="@+id/motorCutoffCheck"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="Motor Cutoff Inhibit" />

                    <CheckBox
                        android:id="@+id/phaseRotationCheck"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="Phase Rotation Wrong" />

                    <CheckBox
                        android:id="@+id/usingDefaultDNPCheck"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text= "Using Default DNP Profile" />
            </LinearLayout>
    </ScrollView>

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:layout_weight="1" >

        <Button
            android:id="@+id/button3"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:text="Back" />

        <Button
            android:id="@+id/button3"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:text="Read" />
    </LinearLayout>
</LinearLayout>

5 个答案:

答案 0 :(得分:2)

将按钮更改为android:layout_width="wrap_content" 您还可以在spdip中为wrap_content

输入值

并添加文字android:layout_marginLeft="10sp"

答案 1 :(得分:1)

试试这个

<?xml version="1.0" encoding="UTF-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:weightSum="1.0" >
    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content" 
       android:weightSum="9"
       android:gravity="center"
        >
            <TextView
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:gravity="center_horizontal"
                android:text="SN : "

                android:layout_weight="1" />

            <TextView
                android:id="@+id/serialNumberView"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:gravity="center_horizontal"
                 android:layout_weight="2" 
                 android:text="saasdasd ssadasd sadas asd sd sd"/>

            <TextView
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:gravity="center_horizontal"
                android:text="Ver : "
                 android:layout_weight="1" />

            <TextView
                android:id="@+id/versionView"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:gravity="center_horizontal"
                android:layout_gravity="center"
                 android:layout_weight="2"
                  android:text="saasdasd ssadasd sadas asd sd sd" 
                />

            <TextView
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:gravity="center_horizontal"
                android:text="Type : "
                android:layout_gravity="center"
                   android:layout_weight="1" 

                 />

            <TextView
                android:id="@+id/typeView"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:gravity="center_horizontal"
                android:layout_gravity="center"
                  android:layout_weight="2" 
                   android:text="saasdasd ssadasd sadas asd sd sd" />

    </LinearLayout>

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

            <LinearLayout
                android:layout_width="wrap_content"
                android:layout_height="wrap_content" 
                android:orientation="vertical"
                android:layout_weight="1">


                    <CheckBox
                        android:id="@+id/floatCheck"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="Float" />

                    <CheckBox
                        android:id="@+id/tripCheck"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="Trip" />

                    <CheckBox
                        android:id="@+id/closeCheck"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="Close" />

                    <CheckBox
                        android:id="@+id/blockedCheck"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="Blocked" />

                    <CheckBox
                        android:id="@+id/hardTripCheck"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="Hard Trip" />

                    <CheckBox 
                        android:id="@+id/phaseAngleCheck"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="Phase angle wrong for closing" />

                    <CheckBox
                        android:id="@+id/diffVoltsCheck"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="Differential volts too low" />

                    <CheckBox
                        android:id="@+id/networkVoltsCheck"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="Network volts too low to close" />

                    <CheckBox
                        android:id="@+id/usingDefaultsCheck"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="Using Defaults( Reprogram )" />

                    <CheckBox
                        android:id="@+id/relaxedCloseActiveCheck"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="Relaxed Close Active" />

                    <CheckBox
                        android:id="@+id/commBoardDetectedCheck"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="Comm Board Detected" />

                    <CheckBox 
                        android:id="@+id/antiPumpBlock"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="Anti-Pump Block" />

                    <CheckBox
                        android:id="@+id/motorCutoffCheck"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="Motor Cutoff Inhibit" />

                    <CheckBox
                        android:id="@+id/phaseRotationCheck"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="Phase Rotation Wrong" />

                    <CheckBox
                        android:id="@+id/usingDefaultDNPCheck"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text= "Using Default DNP Profile" />
            </LinearLayout>
    </ScrollView>

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:weightSum="1" >

        <Button
            android:id="@+id/button3"
            android:layout_width="0dp"
            android:layout_height="fill_parent"
            android:text="Back"
            android:layout_weight=".5" />

        <Button
            android:id="@+id/button3"
            android:layout_width="0dp"
            android:layout_height="fill_parent"
            android:text="Read"
            android:layout_weight=".5" />
    </LinearLayout>
</LinearLayout>

enter image description here

答案 2 :(得分:1)

要修复按钮,请使用

android:layout_weight="1"

我不确定如何帮助您解决其他问题,尝试给他们一些左边距。

答案 3 :(得分:1)

Use 表格布局 along with 表格行 to place both the buttons at the bottom side to side.

答案 4 :(得分:1)

这应该有所帮助。标题是用空格分隔的,但你可以做一些不同的事情,使它看起来更好。

更新了填充,TableLayout更新了TextViews

XML:

<TableLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal" >

    <TableRow>

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:padding="4"
            android:text="SN: " />

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:padding="4"
            android:text="Test" />

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:padding="4"
            android:text="Ver: " />

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:padding="4"
            android:text="Test" />

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:padding="4"
            android:text="Type: " />

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:padding="4"
            android:text="Test" />
    </TableRow>
</TableLayout>

<ScrollView
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_weight="1" >

    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:orientation="vertical" >

        <CheckBox
            android:id="@+id/floatCheck"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Float" />

        <CheckBox
            android:id="@+id/tripCheck"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Trip" />

        <CheckBox
            android:id="@+id/closeCheck"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Close" />

        <CheckBox
            android:id="@+id/blockedCheck"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Blocked" />

        <CheckBox
            android:id="@+id/hardTripCheck"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Hard Trip" />

        <CheckBox
            android:id="@+id/phaseAngleCheck"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Phase angle wrong for closing" />

        <CheckBox
            android:id="@+id/diffVoltsCheck"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Differential volts too low" />

        <CheckBox
            android:id="@+id/networkVoltsCheck"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Network volts too low to close" />

        <CheckBox
            android:id="@+id/usingDefaultsCheck"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Using Defaults( Reprogram )" />

        <CheckBox
            android:id="@+id/relaxedCloseActiveCheck"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Relaxed Close Active" />

        <CheckBox
            android:id="@+id/commBoardDetectedCheck"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Comm Board Detected" />

        <CheckBox
            android:id="@+id/antiPumpBlock"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Anti-Pump Block" />

        <CheckBox
            android:id="@+id/motorCutoffCheck"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Motor Cutoff Inhibit" />

        <CheckBox
            android:id="@+id/phaseRotationCheck"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Phase Rotation Wrong" />

        <CheckBox
            android:id="@+id/usingDefaultDNPCheck"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Using Default DNP Profile" />
    </LinearLayout>
</ScrollView>

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal" >

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="Back" />

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="Read" />
</LinearLayout>

示例图片: enter image description here