我正在寻找一种方法来为不同的API提供不同的UI设计。谷歌搜索给了我一个链接:http://developer.android.com/guide/google/play/publishing/multiple-apks.html#CreatingApks
在此链接中,它声明最好为不同的API创建不同的Apk,而Play商店将负责为手机选择最佳的Apk。
这是唯一的方法还是有任何简单的方法?
答案 0 :(得分:1)
没有必要构建多个APK来实现这一目标。
查看以下链接:http://developer.android.com/training/multiscreen/index.html。
答案 1 :(得分:1)
如果您准备编写更多代码,那就可以了,
如果您希望它通过不同的UI实现不同的API级别,您可以做的一件事是使用此常量检测API级别运行时:android.os.Build.VERSION.SDK_INT
。它返回these values之一。
现在根据此版本,您可以将不同的layout xml
设置为您活动的 contentView 。
注意:这有更多的维护危险。如果您要添加/删除任何UI元素,则必须修改应用程序中的所有布局XML。
答案 2 :(得分:1)
尽量不要使用不同的APK;它造成了一团糟。
例如,要使用API 14的特定布局,请使用文件夹/res/layout-v14
而不是/res/layout
。 API 8的/res/layout-v8
,依此类推......
Android会从与其最匹配的文件夹中获取资源。文件夹充当了一种要求。因此,如果您有API 15且没有layout-v15
文件夹,则会从layout-v14
获取该文件夹。如果您有layout-v14
和layout-v8
,如果它使用的是API 10,则会使用layout-v8
。