android api 资源限定符 - 如何做范围?

问题描述 投票:0回答:2

我需要根据设备上 android 的 API 级别设置不同的菜单选项。具体来说,对于 API 10 - 15,我需要一个特定的菜单,对于 API 16 及更高版本,我需要另一个菜单。我的应用程序 minSdkVersion 是 api 10。

现在菜单资源结构如下所示:

res/menu/menu.xml       (Default)
res/menu-v10/menu.xml    
res/menu-v11/menu.xml
res/menu-v12/menu.xml
res/menu-v13/menu.xml
res/menu-v14/menu.xml
res/menu-v15/menu.xml

我真的必须为每个级别添加一个菜单项吗?或者我可以在一个范围内添加它吗?

我希望我能做到这一点:

res/menu/menu.xml       (Default)
res/menu-v10-v15/menu.xml 

有没有办法以这种方式指定范围?我在docs

中没有看到这一点
android xml android-resources
2个回答
2
投票

有没有办法以这种方式指定范围?

不是那样的。

我真的必须为每个级别添加一个菜单项吗

你不知道。

具体来说,对于 API 10 - 15,我需要一个特定的菜单,对于 API 16 及更高版本,我需要另一个菜单

然后有两个目录:

  • res/menu/menu.xml
    适用于 API 级别 10-15
  • res/menu-v16/menu.xml
    适用于 API 级别 16+

这假设您的

minSdkVersion
为 10。


0
投票

@CommonsWare:非常感谢!我会这样做,即我将仅使用基本 XML 参数将主题.xml 添加到 -v35,因为从 API 35 开始我不再需要任何特定设置。

© www.soinside.com 2019 - 2024. All rights reserved.