android 开发自适应布局

这几天研究了一下Android开发。单位要求的开发多个分辨率版本的app,所以研究了一下Android自适应分辨率的布局。

基本上都是组件的长宽用等比例变量来表示。贴出以下代码

<LinearLayout
            android:layout_width="fill_parent"
            android:layout_height="0dp"
            android:layout_weight="57"
            android:gravity="center" >
        </LinearLayout>

        <LinearLayout
            android:layout_width="fill_parent"
            android:layout_height="0dp"
            android:layout_weight="128"
            android:gravity="center"
            android:orientation="vertical"
            android:weightSum="1280" >

            <TextView
                android:layout_width="0dp"
                android:layout_height="fill_parent"
                android:layout_weight="185"
                android:text="" />

            <Button
                android:id="@+id/Buttonadd"
                android:layout_width="0dp"
                android:layout_height="fill_parent"
                android:layout_weight="128"
                android:background="@drawable/n_01" />

            <TextView
                android:layout_width="0dp"
                android:layout_height="fill_parent"
                android:layout_weight="69"
                android:text="" />

            <Button
                android:id="@+id/Buttoncheck"
                android:layout_width="0dp"
                android:layout_height="fill_parent"
                android:layout_weight="128"
                android:background="@drawable/n_01" />

            <TextView
                android:layout_width="0dp"
                android:layout_height="fill_parent"
                android:layout_weight="69"
                android:text="" />

            <Button
                android:id="@+id/Buttoncase"
                android:layout_width="0dp"
                android:layout_height="fill_parent"
                android:layout_weight="128"
                android:background="@drawable/n_01" />

            <TextView
                android:layout_width="0dp"
                android:layout_height="fill_parent"
                android:layout_weight="69"
                android:text="" />

            <Button
                android:id="@+id/Buttoncompany"
                android:layout_width="0dp"
                android:layout_height="fill_parent"
                android:layout_weight="128"
                android:background="@drawable/n_01" />

            <TextView
                android:layout_width="0dp"
                android:layout_height="fill_parent"
                android:layout_weight="185"
                android:text="" />
        </LinearLayout>

        <LinearLayout
            android:layout_width="fill_parent"
            android:layout_height="0dp"
            android:layout_weight="94"
            android:gravity="center" >
        </LinearLayout>

        <LinearLayout
            android:layout_width="fill_parent"
            android:layout_height="0dp"
            android:layout_weight="128"
            android:gravity="center"
            android:orientation="vertical"
            android:weightSum="1280" >
        </LinearLayout>

        <LinearLayout
            android:layout_width="fill_parent"
            android:layout_height="0dp"
            android:layout_weight="94"
            android:gravity="center" >
        </LinearLayout>

        <LinearLayout
            android:layout_width="fill_parent"
            android:layout_height="0dp"
            android:layout_weight="128"
            android:gravity="center"
            android:orientation="vertical"
            android:weightSum="1280" >
        </LinearLayout>

        <LinearLayout
            android:layout_width="fill_parent"
            android:layout_height="0dp"
            android:layout_weight="94"
            android:gravity="center" >
        </LinearLayout>

        <LinearLayout
            android:layout_width="fill_parent"
            android:layout_height="0dp"
            android:layout_weight="71"
            android:gravity="center" >
        </LinearLayout>

<LinearLayout android:layout_width="fill_parent" android:layout_height="0dp" android:layout_weight="128" android:gravity="center" android:orientation="vertical" android:weightSum="1280" >

将垂直的线性布局等比分为1280 份,

<TextView android:layout_width="0dp" android:layout_height="fill_parent" android:layout_weight="185" android:text="" />

用android:layout_weight 属性设置 TextView占父空间的185份,而不是将TextView的高度写死。这样就可以自适应TextView的高度。在1280*800的分辨率下 TextView的高度是185dp 而在其它的分辨率下TextView的高度就会等比缩放。

posted on 2014-04-03 16:32  张家大宝  阅读(610)  评论(0编辑  收藏  举报

导航