Screen Compatibility issue in android

2019-02-11 02:19发布

I have a problem regarding my app.I have created tab bar using image button,when I run the app in 480*800 hdpi device the tab bar images are displaying perfectly when I run in 240*320 device the images in image button are not displaying properly.I have created the drawable folders and added the images also

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

3条回答
走好不送
2楼-- · 2019-02-11 02:40

For detail, please refer to Android Developer Guide.

To summarize, you must declare each supporting screen sizes in your AndroidManifest.xml. For example, you have to include the following:

<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"/>

To support 240*320, you must do the following:

1: In AndroidManifest.xml, include

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

2: Create different layout-small folder:

res/layout/layout-small/

3: Create drawable-ldpi folder (you already did):

res/drawable-ldpi/
查看更多
神经病院院长
3楼-- · 2019-02-11 02:42

Try following scenario of layout. I found at 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)

If outcome display in Graphical layout best matches with all other, you will get same output in original device also.

查看更多
登录 后发表回答