簡體   English   中英

使RelativeLayout適應所有屏幕尺寸

[英]Make RelativeLayout to fit all screen size

我正在嘗試修改相對布局以適合所有屏幕尺寸。 我知道我的問題是我要手動設置屏幕上每個元素的邊距,因為在Android Studio中的編輯器上設置起來比較容易,但是很明顯,當我在其他設備上嘗試該應用程序后,一團糟。 現在,我通過使用“ match_parent”和wrap_content命令對其進行了修改,以使其更加靈活,這是在Pixel C上嘗試時的結果: 在此處輸入圖片說明

問題是當我更換設備時,因為例如,如果我在Galaxy Tab上嘗試使用它,則會得到以下結果: 在此處輸入圖片說明

這是代碼:

    <?xml version="1.0" encoding="utf-8"?>
<RelativeLayout  xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:id="@+id/slidelinearlayout"
    android:background="@drawable/background_main2">

<LinearLayout
    android:id="@+id/upperLayout"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal">

    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginLeft="160dp"
        android:layout_marginTop="140dp"
        android:orientation="vertical">

        <ImageView
            android:id="@+id/slideimg"
            android:layout_width="400dp"
            android:layout_height="350dp"
            android:layout_marginRight="150dp" />
        <TextView
            android:id="@+id/txttitle"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginLeft="60dp"
            android:layout_marginTop="20dp"
            android:text="Senza nome"
            android:textColor="@android:color/black"
            android:textSize="40sp"
            android:textStyle="bold" />

    </LinearLayout>

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

        <TextView
            android:id="@+id/upperTableHeader"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginTop="160dp"
            android:text="Table Header here"
            android:textColor="@android:color/holo_red_light"
            android:textSize="30sp" />

        <TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
            xmlns:tools="http://schemas.android.com/tools"
            android:id="@+id/tl"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_above="@+id/t2"
            android:layout_alignParentEnd="true" >

        <TableRow
            android:id="@+id/tr_item_1"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:background="@drawable/table_row_bg"
            android:padding="2dp">

            <TextView
                android:id="@+id/item_1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:background="@drawable/table_cell_bg"
                android:paddingRight="10dp"
                android:text="  Flessibilità"
                android:textColor="#030101"
                android:textSize="30dp" />

            <TextView
                android:id="@+id/f_item_1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:background="@drawable/table_cell_bg"
                android:paddingLeft="10dp"
                android:paddingRight="10dp"
                android:textColor="#070404"
                android:textSize="30dp" />
        </TableRow>

        <TableRow
            android:id="@+id/tr_item_2"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:background="@drawable/table_row_bg"
            android:padding="2dp">

            <TextView
                android:id="@+id/item_2"
                android:layout_width="202dp"
                android:layout_height="wrap_content"
                android:background="@drawable/table_cell_bg"
                android:paddingRight="10dp"
                android:text="  Fluidità"
                android:textColor="#070404"
                android:textSize="30dp" />

            <TextView
                android:id="@+id/fl_item_2"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:background="@drawable/table_cell_bg"
                android:paddingLeft="10dp"
                android:paddingRight="10dp"
                android:textColor="#070404"
                android:textSize="30dp" />
        </TableRow>

        <TableRow
            android:id="@+id/tr_item_3"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:background="@drawable/table_row_bg"
            android:padding="2dp">

            <TextView
                android:id="@+id/item_3"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:background="@drawable/table_cell_bg"
                android:paddingRight="10dp"
                android:text="  Originalità"
                android:textColor="#070404"
                android:textSize="30dp" />

            <TextView
                android:id="@+id/o_item_3"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:background="@drawable/table_cell_bg"
                android:paddingLeft="10dp"
                android:paddingRight="10dp"
                android:textColor="#070404"
                android:textSize="30dp" />
        </TableRow>

        <TableRow
            android:id="@+id/tr_item_4"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:background="@drawable/table_row_bg"
            android:padding="2dp">

            <TextView
                android:id="@+id/item_4"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:background="@drawable/table_cell_bg"
                android:paddingRight="10dp"
                android:text="  Elaborazione"
                android:textColor="#070404"
                android:textSize="30dp" />

            <TextView
                android:id="@+id/el_item_4"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:background="@drawable/table_cell_bg"
                android:paddingLeft="10dp"
                android:paddingRight="10dp"
                android:textColor="#070404"
                android:textSize="30dp" />
        </TableRow>

        <TableRow
            android:id="@+id/tr_item_5"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:background="@drawable/table_row_bg"
            android:padding="2dp">

            <TextView
                android:id="@+id/item_5"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:background="@drawable/table_cell_bg"
                android:paddingRight="10dp"
                android:text="  Titolo"
                android:textColor="#070404"
                android:textSize="30dp" />

            <TextView
                android:id="@+id/t_item_5"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:background="@drawable/table_cell_bg"
                android:paddingLeft="10dp"
                android:paddingRight="10dp"
                android:textColor="#070404"
                android:textSize="30dp" />
        </TableRow>
    </TableLayout>
    </LinearLayout>
</LinearLayout>

<LinearLayout
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@id/upperLayout"
    android:layout_alignParentRight="true"
    android:layout_marginTop="30dp"
    android:layout_marginRight="80dp"
    android:orientation="vertical">

    <TextView
        android:id="@+id/lowerTableHeader"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Table Header here"
        android:textColor="@android:color/holo_red_light"
        android:textSize="30sp" />

    <TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:id="@+id/tl_2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignEnd="@+id/tl">

        <TableRow
            android:id="@+id/tr_item_6"
            android:layout_width="222dp"
            android:layout_height="match_parent"
            android:background="@drawable/table_row_bg"
            android:padding="2dp">

            <TextView
                android:id="@+id/t1_item_1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:background="@drawable/table_cell_bg"
                android:paddingRight="10dp"
                android:text="    Tempo di reazione"
                android:textColor="#070404"
                android:textSize="30dp" />

            <TextView
                android:id="@+id/tempo_item_1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:background="@drawable/table_cell_bg"
                android:paddingLeft="10dp"
                android:paddingRight="10dp"
                android:textColor="#070404"
                android:textSize="30dp" />
        </TableRow>

        <TableRow
            android:id="@+id/tr_item_7"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:background="@drawable/table_row_bg"
            android:padding="2dp">

            <TextView
                android:id="@+id/t2_item_2"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:background="@drawable/table_cell_bg"
                android:paddingRight="10dp"
                android:text="    Tempo di completamento"
                android:textColor="#070404"
                android:textSize="30dp" />

            <TextView
                android:id="@+id/tempo_item_2"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:background="@drawable/table_cell_bg"
                android:paddingLeft="10dp"
                android:paddingRight="10dp"
                android:textColor="#070404"
                android:textSize="30dp" />
        </TableRow>

        <TableRow
            android:id="@+id/tr_item_8"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:background="@drawable/table_row_bg"
            android:padding="2dp">

            <TextView
                android:id="@+id/n_cancellature"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:background="@drawable/table_cell_bg"
                android:paddingRight="10dp"
                android:text="    Numero cancellature"
                android:textColor="#070404"
                android:textSize="30dp" />

            <TextView
                android:id="@+id/n_3"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:background="@drawable/table_cell_bg"
                android:paddingLeft="10dp"
                android:paddingRight="10dp"
                android:textColor="#070404"
                android:textSize="30dp" />
        </TableRow>
    </TableLayout>
</LinearLayout>

您可以使用SDP設置不同設備的控件或文本的大小。

在此處輸入圖片說明

提供新尺寸單位的Android SDK-sdp(可縮放dp)。 此尺寸單位隨屏幕尺寸縮放。 它可以幫助Android開發人員支持多個屏幕。

鏈接-https: //github.com/intuit/sdp

您可以在res中創建其他布局目錄

和Design ui專用於該屏幕尺寸

Android自動檢測必須使用的尺寸

如:布局(這是默認設置,並且對所有設備而言都是默認設置)layout-sw600(用於7和8英寸屏幕)layout-sw720(用於10、11和12屏幕)

有關更多信息,請觀看

暫無
暫無

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

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