【问题标题】:android layout support for all screen sizes with support to pre lollipop and above lollipop devicesandroid布局支持所有屏幕尺寸,支持棒棒糖前及棒棒糖设备
【发布时间】:2016-11-23 12:48:30
【问题描述】:

这是我的第一个 android 应用程序,我被困在如何对小、中和大屏幕尺寸的布局进行分组,以及如何支持棒棒糖前设备和棒棒糖设备以上的设备?

布局小

layout-small-v21

正常布局

layout-normal-v21

布局-大

layout-large-v21

上面列出的目录名称是否正确?或者有人可以告诉我如何实现这一目标吗?

【问题讨论】:

标签: android android-layout android-5.0-lollipop android-4.2-jelly-bean


【解决方案1】:

要支持使用不同布局文件夹的所有屏幕尺寸,您必须遵循这些文件夹结构。

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

并在 manifest.xml 中启用相应的支持

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

对于所有屏幕分辨率的图像,使用可绘制的文件夹结构:

res/drawable-mdpi/ic_launcher.png        // bitmap for medium density
 res/drawable-hdpi/ic_launcher.png        // bitmap for high density
 res/drawable-xhdpi/ic_launcher.png       // bitmap for extra high density

支持棒棒糖前后api。您必须决定应用支持的最低 api 级别和最高 api 级别。

假设您的应用需要: 分钟。 api 级别 = 15 和最大。 api 级别 = 23

在 Eclipse IDE 中: 在 Manifest.xml 中添加

<uses-sdk
        android:minSdkVersion="15"
        android:maxSdkVersion="23"
        android:targetSdkVersion="23" />

在 AndroidStudio IDE 中: 在 build.gradle 中添加

defaultConfig {
        ...
        minSdkVersion 15
        maxSdkVersion 23
        targetSdkVersion 23
        versionCode 1
        versionName "1.0"
        ....
    }

【讨论】:

  • 谢谢先生,您的回答对我有帮助。
  • 为什么你不必像 OP 那样包含 -v21?
  • @santafebound 因为大多数 android 组件库都支持 API 21 以下,因此无需创建布局...-v21,某些组件依赖于应用程序主题,因此您可能需要创建 values-v21 以区分具有材料支持的组件的一些主题。
猜你喜欢
  • 1970-01-01
  • 2016-02-11
  • 1970-01-01
  • 2018-09-01
  • 2015-08-12
  • 2015-09-22
  • 2016-08-14
  • 1970-01-01
  • 2016-03-17
相关资源
最近更新 更多