现在,我将每个xml布局文件存储在res/layout文件夹中,因此管理小项目是可行且简单的,但是当存在大型和重型项目的情况时,则应该存在层次结构和子文件夹布局文件夹.
例如
layout
-- layout_personal
-- personal_detail.xml
-- personal_other.xml
--layout_address
-- address1.xml
-- address2.xml
Run Code Online (Sandbox Code Playgroud)
以同样的方式,我们希望有大型应用程序的子文件夹,所以有没有办法在android项目中这样做?
我可以在布局文件夹中创建layout-personal和layout_address子文件夹,但是当使用R.layout ._______访问xml布局文件的时候,当时内部没有任何xml布局弹出窗口.菜单.
我正在尝试在我的Android项目中添加一个资源文件夹.我创建了一个新的文件夹extra-res所以我的项目结构如下所示:
+ src
+ main
+ res
+ layout
+ ...etc...
+ extra-res
+ layout
Run Code Online (Sandbox Code Playgroud)
所以我把它添加到build.gradle:
android {
.........
sourceSets {
main {
res.srcDirs = ['res', 'extra-res']
}
}
}
Run Code Online (Sandbox Code Playgroud)
但在编辑build.gradle文件后,构建失败.
:app:processDebugResources C:\ Users\vovasoft\AndroidStudioProjects\sdbm\app\build\intermediates\manifests\full\debug\AndroidManifest.xml
错误:(13,23)找不到与给定名称匹配的资源(在'icon'处值为'@ drawable/ic_launcher').
错误:(14,24)找不到与给定名称匹配的资源(在'label'处,值为'@ string/app_name').错误:任务':app:processDebugResources'的执行失败.com.android.ide.common.internal.LoggedErrorException:无法运行命令:
aapt.exe包-f --no-crunch -I android.jar -M\AndroidStudioProjects\sdbm\app\build\intermediates\manifests\full\debug\AndroidManifest.xml -S\AndroidStudioProjects\sdbm\app\build\intermediates\res\debug -A\AndroidStudioProjects\sdbm\app\build\intermediates\assets\debug -m -JC:\ Users\vovasoft\AndroidStudioProjects\sdbm\app\build\generated\source\r\_spid -F('label'的值为'@ string/activity_edit_field').
在编辑build.gradle之前,构建成功.