android - 如何快速检查 xml 值所需的 API 级别?

标签 android android-layout android-xml

我正在使用 Android Studio 开发一个针对不同 API 级别的项目。 因此,我有 res/values/styles.xml 用于从 minSDKVersion 到 10 级别的设备,以及 res/values-v11/styles.xml 用于设备具有 11 API 级别及更高级别。

假设我在 values/styles.xml 中写入以下行

<style name="AppBaseTheme" parent="android:Theme.Black">

如何检查 Theme.Black 是否适用于我的 minSDKVersion

最佳答案

Android Studio 支持工具命名空间中的各种 XML 属性,这些属性支持设计时功能(例如在 fragment 中显示哪种布局)或编译时行为(例如应用于 XML 资源的收缩模式) .

要使用这些属性,请将工具命名空间添加到您要使用它们的每个 XML 文件的根元素,如下所示:

<RootTag xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools" >

例如,您可能会使用此布局,因为 GridLayout 仅在 API 级别 14 及更高版本上可用,但您知道此布局不适用于任何较低版本:

<GridLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    tools:targetApi="14" >

或者您可以使用版本名称:tools:targetApi="jelly_bean"

如果您希望布局目录在不同版本中使用,请将文件命名为:

/res/layout/layout.xml - (default directries)

/res/layout-v14/layout.xml

/res/layout-v23/layout.xml

/res/layout-v28/layout.xml

关于android - 如何快速检查 xml 值所需的 API 级别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19055829/

相关文章:

android - Android XML 可以输入 "@"吗?

android - 无法使用 SQLiteDatabase.openDatabase() 打开 android 数据库

android - 如何在 android 平台上的可执行文件中使用 CallStack(在 CallStack.tpp 中)?

Android 从点数据库设置 GoolgeMap 边界

android - 所有 api 的 MenuItem 色调 - api > 26 的 iconTint -

android - 我将如何在 XML 中重新创建此标准均衡器布局?

android - OnItemSelected 不适用于自定义微调器适配器类

android - 动态膨胀 View 时滚动到底部

Android Studio XML 自动完成功能无法正常工作

android - 布局问题,无法与 map 交互