Android支持所有屏幕尺寸:三星Galaxy Note中的UI延伸

时间:2012-07-13 15:35:59

标签: android android-layout android-ui

在我的Android应用程序中,我在清单文件中包含了以下内容。

<uses-sdk android:minSdkVersion="4" android:targetSdkVersion="11"/>

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

同样在Res文件夹(UI设计)下,我为以下屏幕尺寸设计了单独的UI。

layout
layout-large
layout-small

所以它工作得非常好,但是在三星Galaxy Note 中有一个稍微大一点的屏幕(5.3英寸),我的UI元素得到了拉伸,其中一部分超出了屏幕限制而变得不是入店。

根据SUPPORTING MULTIPLE SCREENS POST BY ANDROID,此手机可以使用layout-large版面资源和drawable-xhdpi图像资源正常工作。

无法弄清楚究竟发生了什么。任何指导都非常感谢。提前致谢...!!!!

编辑

只是为了测试我在Res文件夹下的layout-large-xhdpi命名文件夹下创建了另一组额外的UI。因此,当我测试它需要来自此文件夹的UI但仍然是UI元素超出屏幕限制。此外,所有宽度金额都已分配dp个单位。

===一些屏幕截图来解释问题情况===

以下是设计时如何在图形布局中查看(layout-large-xhdpi)的屏幕截图

enter image description here

<LinearLayout
    android:id="@+id/Layout2"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_marginTop="20dp">

   <Button
        android:id="@+id/button1"
        android:layout_width="240dp"
        android:layout_height="wrap_content"
        android:text="Account" />

    <Button
        android:id="@+id/button2"
        android:layout_width="240dp"
        android:layout_height="wrap_content"
        android:text="Settings" />       

</LinearLayout>

当它运行时它只是伸展(截屏后)

enter image description here

1 个答案:

答案 0 :(得分:4)

尝试使用:

<LinearLayout
    android:id="@+id/Layout2"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_marginTop="20dp">

   <Button
        android:id="@+id/button1"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="Account" />

    <Button
        android:id="@+id/button2"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="Settings" />       

</LinearLayout>

根据Google提供的指南,您应该避免在布局中使用硬编码像素。

请参阅此链接以获取更多详细信息:

http://developer.android.com/guide/practices/screens_support.html