5

我使用模拟器大小的平板电脑布局从 xml 进行布局。但是,当在 android 手机设备上以相同的布局打开时,一切都会扭曲,所以我可以制作一个在设备手机和平板电脑上都可以正常工作的 xml 布局。请建议我,感谢您的回答。

4

4 回答 4

13

让你的资源像这样。

res/layout/my_layout.xml // 正常屏幕尺寸的布局(“默认”)

res/layout-small/my_layout.xml // 小屏幕布局

res/layout-large/my_layout.xml // 大屏幕布局

res/layout-xlarge/my_layout.xml // 超大屏幕的布局

res/layout-xlarge-land/my_layout.xml // 横向超大布局

res/drawable-mdpi/my_icon.png // 中等密度的位图

res/drawable-hdpi/my_icon.png // 高密度位图

res/drawable-xhdpi/my_icon.png // 超高密度位图

更多参考参考1

将此添加到您的 manifest.xml

<supports-screens
            android:smallScreens="true"
            android:normalScreens="true"
            android:largeScreens= "true"
            android:anyDensity="true"
    />

希望这会帮助你。

于 2013-06-28T05:22:47.750 回答
6

为手机或平板电脑制作两个单独的布局,只需使用默认布局设计,然后单击方向进行预览,然后单击创建平板电脑变体。之后会看到选项卡和移动设备的两种布局,这是最简单的。在此处输入图像描述

于 2019-09-27T11:21:21.633 回答
1

使用表格和权重在平板电脑上的手机上创建相同或相似的纵横比。我只会创建不同的布局作为最后的手段。

<TableRow
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_weight=".33" >
             //Note: You will need some other TableRows fill in the difference of this Table Row..2 more of the same will equal 1.
        <TextView
            android:id="@+id/x"
            android:layout_width="wrap_content"
            android:layout_height="fill_parent"
            android:layout_marginLeft="3dp"
            android:layout_weight=".33"
            android:background="@drawable/buttonx"
            android:gravity="center"
            android:text="Words"
            android:textColor="#ffffff"
            android:textSize="16sp"
            android:textStyle="bold" />

        <TextView
            android:id="@+id/x2"
            android:layout_width="wrap_content"
            android:layout_height="fill_parent"
            android:layout_marginLeft="3dp"
            android:layout_weight=".33"
            android:background="@drawable/buttonx2"
            android:gravity="center"
            android:text="Other Words"
            android:textColor="#ffffff"
            android:textSize="16sp"
            android:textStyle="bold" />

        <TextView
            android:id="@+id/x3"
            android:layout_width="wrap_content"
            android:layout_height="fill_parent"
            android:layout_marginLeft="3dp"
            android:layout_weight=".33"
            android:background="@drawable/buttonx3"
            android:gravity="center"
            android:text="More Words"
            android:textColor="#ffffff"
            android:textSize="16sp"
            android:textStyle="bold" />

    </TableRow>
于 2013-06-28T05:58:53.137 回答
0

您可以为手机和选项卡创建两个单独的布局。您需要做的是为电话和选项卡创建一个带有“文件名”的布局文件,通过右键单击项目并选择新建> android xml布局文件>然后输入一个“文件名”,单击下一步并选择大小从右窗格并从下拉列表中选择 x-large。您的选项卡布局文件是单独创建的,因此请单独自定义您的布局。

于 2013-06-28T05:26:09.170 回答