支持所有屏幕尺寸的Android布局支持棒棒糖及以上棒棒糖设备
这是我的第一款Android应用程序,我被困在如何为小型,中型和大型屏幕尺寸分组布局以及如何支持棒棒糖前设备和以上的棒棒糖设备?支持所有屏幕尺寸的Android布局支持棒棒糖及以上棒棒糖设备
布局小
布局小V21
布局正常
布局正常-V21
布局大
布局大V21
上面列出的目录名称是否正确?或者可以有人告诉我如何实现这一目标?
要使用不同的布局文件夹支持所有屏幕尺寸,您必须遵循这些文件夹结构。
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
@santafebound,因为大多数android组件库都支持API 21以下的版本,因此不需要创建布局...- v21,某些组件依赖于应用程序主题,所以可能需要创建值-v21来区分某些具有材料支持的组件的主题。 –
单独创建XML,并检查您的SDK版本以编程方式和基于检测到的版本膨胀您的布局 –
阅读文档https://developer.android.com/guide/practices/screens_support.html – Flexicoder