1

附加的布局适用于手机(Samsung Infuse),但在将应用上传到平板电脑(Nexus 7)时无法正确显示布局。按钮大小不正确。我怎样才能解决这个问题?

         <?xml version="1.0" encoding="utf-8"?>
         <LinearLayout xmlns:android="http://schemas.android.com/apk/res/"
            style="@string/menu_settings"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:background="@drawable/gecko25"
            android:gravity="center_horizontal"
            android:orientation="horizontal"
            android:textAlignment="center"
            android:visibility="visible" >

        <Button
            android:id="@+id/link1_btn"
            android:layout_width="98dp"
            android:layout_height="wrap_content"
            android:minHeight="58dip"
            android:minWidth="98dip"
            android:text="About"
            android:textStyle="bold" />

        <Button
            android:id="@+id/link2_btn"
            android:layout_width="98dp"
            android:layout_height="wrap_content"
            android:minHeight="58dip"
            android:minWidth="98dip"
            android:text="Experience"
            android:textStyle="bold" />

        <Button
            android:id="@+id/link3_btn"
            android:layout_width="98dp"
            android:layout_height="wrap_content"
            android:minHeight="58dip"
            android:minWidth="98dp"
            android:selectAllOnFocus="false"
            android:text="Bulacards"
            android:textStyle="bold" />

                    </LinearLayout>
4

2 回答 2

0

不建议您将 tvdpi 用于 Nexus 7 屏幕。

看到这个: http ://android-developers.blogspot.com/2012/07/getting-your-app-ready-for-jelly-bean.html

检测 7" 平板电脑(如 Nexus 7)的最佳方法可能是使用限定符:

布局-sw600dp

以及 10 英寸平板电脑的预选赛:

布局-sw720dp

您可能想尝试在 sp 而不是 dp 中指定按钮大小,因为如果用户更改默认字体大小但 wrap_content 和/或使用权重通常最好,它们可能需要更大或更小。

于 2013-01-25T05:31:53.023 回答
0

为不同的密度制作不同的布局。即,将相同的 xml 文件放在
layout-hdpi,
layout-xhdpi,
layout-tvdpi

要在 res/layout 中创建这些文件夹,请执行以下步骤:

右键单击布局文件夹-->新建-->其他-->Andorid xml布局-->下一个-->给出文件名(所有密度都必须相同)-->AvailableQulaifiers选项卡选择密度->将其移至借助中间的箭头选择限定符->选择什么密度(中高电视)->完成

例如:

Nexus SNexus 一--->hdpi

银河 Nexus ---->xhdpi

连结 7 --->tvdpi

并给出heights..widths最佳Button做法是将它们设置为wrapcontent,如果您的场景需要高度,请按照上述步骤操作。并给出高度和宽度,以便在不同密度下的手机和平板电脑有所不同

于 2013-01-25T04:56:43.023 回答