首页 > 解决方案 > 在 Android Studio 中更改多个(非常)相似的文件

问题描述

当针对一系列 API 版本时,我经常不得不创建我的布局文件的新版本,它们只有几行不同,因为它们使用了仅在某些版本中可用的属性。

例如,如果我想在 API 级别 26+ 上使用 s的android:autofillHints属性,我必须复制整个布局文件。EditText

这使得更改非常耗时。如果我决定添加一个按钮或更改一些间距的大小,我必须调整我所有的布局文件。

如果我只有两个文件,我可以使用比较视图 (Ctrl + D) 快速更改两个文件。然而,在更复杂的项目中,我偶尔会有三个或四个版本的布局文件,它们之间只有细微的差别。

是否有一些明显的方法来管理我遗漏的问题?因为否则,在开发针对广泛 Android 版本和设备配置的大型应用程序时,这种花哨的“配置覆盖机制”似乎是一场噩梦。

标签: androidandroid-studio

解决方案


android文档指定如何重用/嵌套布局
基本上归结为 使用

<include layout="@layout/layoutToNest"/>

嵌套布局
并使用合并来避免重新指定根布局

<merge xmlns:android="http://schemas.android.com/apk/res/android">
<layoutElementToNest/>  
<layoutElementToNest2/>

</merge>

在您的 xml 中以方便布局重用和嵌套。

还要确保使用布局优化技术,如 android lint 以确保您的布局得到优化


推荐阅读