android中的多屏幕支持

时间:2011-09-17 10:08:54

标签: android resolution

我正在研究一个项目,我已经在nexus上测试了它。它正常工作,但我希望我的项目应与所有屏幕尺寸兼容。 这该怎么做?? 我已经给了

<supports-screens  android:smallScreens="true"/>
  <supports-screens  android:normalScreens="true"/>
  <supports-screens android:largeScreens="true"/>
  <supports-screens android:anyDensity="true"/>
  <supports-screens android:resizeable="true"
  android:anyDensity="true" />
androidmainfest.xml中的

参数

5 个答案:

答案 0 :(得分:4)

答案 1 :(得分:2)

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

您必须在res文件夹中为不同的布局添加不同的文件夹 - &gt; hdpi,mdpi,ldpi和大屏幕你xhdpi(对于平板电脑)和大hdpi或xlarge(对于NXzoom)。同时根据屏幕尺寸设置不同布局的图像和文字大小...

答案 2 :(得分:2)

对于旧日,我们曾经为多个屏幕创建不同的布局文件夹,例如layout-small,layout-normal,layout-large,layout-xlarge。但这是一项很多工作。因此有一种支持多屏幕的新方法。详情如下。

支持多屏(所有手机和平板电脑):

对于手机:我们通常对不同的dpi使用不同的值文件夹,而在值文件夹内只有“dimens.xml”文件不同,因为当我们使用不同的设备时,只有维度更改其他比所有参数例如颜色,字符串,样式等都相同。 对于值文件夹:共有4个值文件夹。

values                                    (For mdpi devices)
values-hdpi                               (For hdpi devices)
values-xhdpi                              (For xhdpi devices)
values-xxhdpi                             (For xxhdpi devices)

(这里每个文件夹内只有尺寸文件不同,所以除了尺寸文件,保留所有其他文件只在值文件夹中。)

对于平板电脑:我们必须使用sw(smallestWidth)概念。例如,sw600dp表示只有当可用屏幕的最小尺寸至少为600dp时,系统才会使用这些资源。当屏幕方向改变时,设备的smallestWidth不会改变。 通常我们在平板电脑的res文件夹中创建两个文件夹:

layout-sw600dp                       (For 7″ to 9″ Screen)
layout-sw720dp                       (For 10″ to above screen)

最后一件事,你必须创建不同的可绘制文件夹的任何设备(手机或平板电脑)的图像:

drawable-mdpi
drawable-hdpi
drawable-xhdpi
drawable-xxhdpi

答案 3 :(得分:0)

我正在以这种方式处理它并且它的工作正常.....如果任何人改进了方式,那么指导我

屏幕尺寸480x800

布局正常HDPI-480×800

抽拉正常-HDPI-480×800

屏幕尺寸 Galaxy Nexus ---虽然它的尺寸是1280x720,但实际上由于系统条的尺寸(屏幕尺寸)不同

布局正常xhdpi

抽拉正常-xhdpi

屏幕尺寸注5.3 ---

布局正常xhdpi-1280×800

抽拉正常-xhdpi-1280×800

屏幕尺寸 S3 ---

布局正常xhdpi-1280×720

抽拉正常-xhdpi-1280×720

支持操作系统版本3及更高版本的屏幕尺寸 7英寸标签2 ---由于系统栏尺寸(屏幕尺寸)不同,实际上不要写尺寸1026x600 bsz

布局大MDPI

抽拉-大MDPI

屏幕尺寸 7英寸标签页p1000 等等,不足以支持小于3 ---

布局大HDPI-1024×600

抽拉-大HDPI-1024×600

屏幕尺寸 1280x800 标签10.1,10.2,注意10.1等---如果你想要其他明智的话你可以添加尺寸

布局XLARGE-MDPI

抽拉-XLARGE-MDPI

答案 4 :(得分:0)

上面的所有答案都有很好的意义。很多时候我们处于LinearLayout内的嵌套RelativeLayout很难适应所有屏幕,考虑到一些复杂的布局线{{1 }}

上述场景可以通过安装所有屏幕的android百分比支持库来解决。

Demo HERE

GitHub Project HERE

Tile

Simple example for demo

希望有人发现它有用: - )。