如何解决不同移动设备的Android屏幕尺寸问题?

6

我正在一个小屏幕手机上测试Android应用程序。 如果我像其他横向移动设备那样使用三星平板电脑来测试我的Android应用程序,则内容会稍微移动。 我该如何解决Android中的屏幕分辨率?


我认为你最好在开发者网站上检查一下,那里有所有的信息。这是Android多屏幕支持 - Lavanya
4个回答

3
请在manifest.xml文件中使用此代码。
 <supports-screens 
    android:resizeable="true" 
    android:smallScreens="true" 
    android:normalScreens="true" 
    android:largeScreens="true" 
    android:anyDensity="true"/>

1

您可以根据屏幕大小(四种不同的屏幕大小)创建多个布局,并将它们放置在 res 下的不同文件夹中,如下所示

res/layout/my_layout.xml             // layout for normal screen size ("default")
res/layout-small/my_layout.xml       // layout for small screen size
res/layout-large/my_layout.xml       // layout for large screen size
res/layout-xlarge/my_layout.xml      // layout for extra large screen size
res/layout-xlarge-land/my_layout.xml // layout for extra large in landscape orientation

同时,您需要在清单文件中添加以下行

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

欲了解更多信息,请查看此链接


0

尽量不要在px方面硬编码。尝试使用fill_parent wrap_content。在非常必要的情况下,可以创建单独的文件夹来存放布局,例如layout、layout-land、layout-small、layout-small-land、layout-large等。将您的布局放置在这些文件夹中,并更改您的布局设置。其余的将由Android操作系统处理。


如果我将不同的布局(大、小、中)放在不同的文件夹中,Android会如何处理这些布局?清单文件是否有任何更改? - user1129139
1
在你的清单文件中添加Nagarjuna Reddy的标签。然后在更改屏幕方向或处理不同型号的手机时,Android操作系统将自行处理此问题。 - Rashmi.B

-1
我认为你应该在使用Java代码时获取屏幕分辨率,然后通过使用给定的分辨率在activityoncreate()方法中动态设置小部件的大小。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接