【问题标题】:Screen Compatibility issue in androidandroid中的屏幕兼容性问题
【发布时间】:2013-02-27 14:17:28
【问题描述】:

我的应用程序有问题。我使用图像按钮创建了标签栏,当我在 480*800 hdpi 设备中运行应用程序时,标签栏图像在 240*320 设备中运行时完美显示图像中的图像按钮显示不正确。我已经创建了可绘制文件夹并添加了图像

drawable
drawable-hdpi
drawable-ldpi
drawable-mdpi
drawable-xhdpi

【问题讨论】:

  • 您提供了您创建的布局结构类型?
  • @ChintanRathod 布局结构意味着
  • 在资源目录中,正如您创建/维护drawable 模式一样,该布局也在那里。告诉我那些。
  • 我用过 layout,layout-small,layout-large..但它没有做任何改变
  • 我认为您必须根据与屏幕兼容的情况放置不同尺寸的图像。你做了什么?

标签: android layout tabs imagebutton


【解决方案1】:

详情请参考Android Developer Guide

总而言之,您必须在AndroidManifest.xml 中声明每个支持的屏幕尺寸。例如,您必须包括以下内容:

<supports-screens android:resizeable=["true"| "false"]
                  android:smallScreens=["true" | "false"]
                  android:normalScreens=["true" | "false"]
                  android:largeScreens=["true" | "false"]
                  android:xlargeScreens=["true" | "false"]
                  android:anyDensity=["true" | "false"]
                  android:requiresSmallestWidthDp="integer"
                  android:compatibleWidthLimitDp="integer"
                  android:largestWidthLimitDp="integer"/>

要支持 240*320,您必须执行以下操作:

1:在AndroidManifest.xml中,包含

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

2:创建不同的layout-small文件夹:

res/layout/layout-small/

3:创建drawable-ldpi 文件夹(您已经这样做了):

res/drawable-ldpi/

【讨论】:

  • 虽然我用过布局,但布局很小并没有任何改变
【解决方案2】:

尝试以下布局方案。我在http://jamil.fluidsoul.net/2011/03/06/creating-android-applications-for-multiple-screen-sizes找到。

Low density Small screens QVGA 240x320 (120dpi):

layout-small-ldpi (240x320)  
layout-small-land-ldpi (320x240)

Low density Normal screens WVGA400 240x400 (x432) (120dpi):

layout-ldpi  (240 x 400 )
layout-land-ldpi  (400 x 240 )

Medium density Normal screens HVGA 320x480 (160dpi):

layout-mdpi (320 x 480 )
layout-land-mdpi (480 x 320 )

Medium density Large screens HVGA 320x480 (160dpi):

layout-large-mdpi (320 x 480 )
layout-large-land-mdpi (480 x 320)

Galaxy Tab ( 240 dpi ):

layout-large  (600 x 1024) 
layout-large-land  (1024 x 600)

High density Normal screens WVGA800 480x800 (x854) (240 dpi):

layout-hdpi (480 x 800)
layout-land-hdpi (800 x 480)

Xoom (medium density large but 1280x800 res) (160 dpi):

layout-xlarge (800 x 1280)
layout-xlarge-land (1280 x 800)

如果图形布局中的结果显示与所有其他最匹配,您将在原始设备中获得相同的输出。

【讨论】:

  • 你应该。如果视图显示与您想要的不同。否则,您还可以在stackoverflow.com/questions/14108074/… 找到其他方式
  • 我已经创建了布局,layout-normal,layout-large..但它仍然无法正常工作,我必须为每个屏幕正确放置相同的布局
  • 根据您的问题,您应该有 2 个布局,例如 layout-small 和 layout。两个足以完成所有工作。如果不起作用,则说明您的代码出了点问题,因为我在我的应用程序中使用了这个场景,它对我来说很好。
  • 我有一个疑问,我可以为每个布局文件夹使用相同的布局..
  • 取决于。如果是正常的屏幕,你可以。但是由于分辨率和屏幕尺寸比普通和小屏幕更多,我在大屏幕和超大屏幕上遇到了问题。
【解决方案3】:

【讨论】:

  • 虽然我使用了布局,但布局小它并没有做任何改变
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-11-12
  • 2012-12-05
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多