缩放小部件中的按钮

时间:2014-04-14 08:52:44

标签: android android-layout widget

我想创建一个小部件,它有多个按钮,当屏幕尺寸改变时,这些按钮将水平缩放。我可以使用单个layout.xml吗?

我试图用下面的图片说明它:

enter image description here

2 个答案:

答案 0 :(得分:1)

// try this way hope this will help you...
<?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">

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="1">

    </LinearLayout>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content">
        <Button
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:text="Button1"
            android:layout_margin="5dp"
            android:layout_weight="1"/>
        <Button
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:text="Button2"
            android:layout_margin="5dp"
            android:layout_weight="1"/>
        <Button
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:text="Button3"
            android:layout_margin="5dp"
            android:layout_weight="1"/>
        <Button
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:text="Button4"
            android:layout_margin="5dp"
            android:layout_weight="1"/>
    </LinearLayout>
</LinearLayout>

答案 1 :(得分:0)

您可以通过在android:layout_weight=""中设置LinearLayout标记来实现这一目标。请参阅以下示例。

<LinearLayout
            android:id="@+id/linearLayout1"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
             >
            <Button
                android:id="@+id/crop"
                android:layout_width="0dp"
                android:layout_height="50dp"
                android:layout_weight="1"
                android:background="@drawable/crop_drawable" >
            </Button>

            <Button
                android:id="@+id/rotate"
                android:layout_width="0dp"
                android:layout_height="50dp"
                android:layout_weight="1"
                android:background="@drawable/rotate_drawable" >
            </Button>

            <Button
                android:id="@+id/auto_correct"
                android:layout_width="0dp"
                android:layout_height="50dp"
                android:layout_weight="1"
                android:background="@drawable/autocorrect_drawable" >
            </Button>          

            <Button
                android:id="@+id/add_colors"
                android:layout_width="0dp"
                android:layout_height="50dp"
                android:layout_weight="1"
                android:background="@drawable/addcolor_drawable" >
            </Button>            

            <Button
                android:id="@+id/adjust_saturation"
                android:layout_width="0dp"
                android:layout_height="50dp"
                android:layout_weight="1"
                android:background="@drawable/adjustsaturation_drawable" >
            </Button>          

            <Button
                android:id="@+id/photo_filter"
                android:layout_width="0dp"
                android:layout_height="50dp"
                android:layout_weight="1"
                android:background="@drawable/photofilter_drawable" >
            </Button>
        </LinearLayout>

在上面的示例中,有6个Buttons,无论屏幕尺寸如何,都可以完全覆盖整个屏幕。