多屏幕布局

时间:2019-11-26 18:02:15

标签: android android-studio android-layout

我试图了解如何针对不同的屏幕尺寸正确使用多种布局。
我做了两个布局:bt_control.xml的默认布局和大布局

enter image description here

我拥有galaxy s8 +设备,因此我制作了具有相同规格的虚拟设备。 android studio将此设备识别为“大型”设备,如下所示: enter image description here

但是,当我将应用程序上传到手机时,它会显示默认的屏幕尺寸布局(不是大屏幕)。 可能是什么原因?

2 个答案:

答案 0 :(得分:1)

我不确定。但是“大”是指平板电脑,具有大屏幕密度的手机附近的垃圾。

而不是使用“大”。使用hdpi,xhdpi,xxhdpi和xxxhdpi。

通过使用xhdpi或更高版本,手机将使用它们。

答案 1 :(得分:1)

您的问题很复杂,但是简单的答案是Android的屏幕类型和大小不同,因此,决定使用资源的因素是:

  • 本地化
  • 设备的像素密度

Android查看像素密度并确定要使用的资源(如果您为大型或小型设备指定了任何资源)。但这要起作用,您需要遵循本地化和资源限定符的优先级。下面的示例:

Which Resource Takes Precedence?

我建议您看看LocalizationAlternative ResourceDifferent Screen Densities。如果您的文件夹限定词未正确设置,Android将忽略这些资源并使用默认资源。您的资源文件夹应如下所示:

res/
  drawable        <- default
  drawable-ldpi   <- Alternative resources for low to large pixel densities
  drawable-mdpi
  drawable-hdpi
  drawable-xhdpi
  drawable-xxhdpi
  drawable-xxxhdpi
  values-sw600dp/
  values-fr/     <- Values for french resources
  layout/        <- Layout default
  layout-land/   <- Alternative layout for landscape orientation

如果《 Android开发者指南》对您来说太含糊,您也可以使用这些工具。希望对您有帮助