Android Error: No resource found ··· 'layout_above' with value '@id/···

本文探讨了Android XML布局文件中使用android:id属性时@+id与@id的区别,特别是当两个视图组件间存在依赖关系时,正确的ID声明顺序对于避免编译错误至关重要。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

关于android:id="@+id/" 和 android:id="@id/"的问题

本以为自己已经理解了这两个,无非就是第一次创建id时用+id/呗
但是没想到这里创建顺序是严格按照代码顺序来的,如:在RelativeLayout中

<RelativeLayout

````

<Widget1
    android:layout_above="@id/widget_2"
````/>


<Widget2
    android:id="@+id/widget_2"
````/>

<RelativeLayout/>


这样写会报错,大致说是Widget1找不到widget_2!!!!
原来需要在Widget1中这么写:android:layout_above="@+id/widget_2"
也就是在第一次遇到这个id时就创建它,放心,这个id还是Widget2的,只是先被Widget1拿去创建并引用了而已
这是什么问题 Error:Execution failed for task ':app:processDebugResources'. > Failed to execute aapt Error:com.android.ide.common.process.ProcessException: Error while executing process E:\AndroidSDK\build-tools\26.0.2\aapt.exe with arguments {package -f --no-crunch -I E:\AndroidSDK\platforms\android-26\android.jar -M \\?\E:\chapter02\Register\app\build\intermediates\manifests\full\debug\AndroidManifest.xml -S E:\chapter02\Register\app\build\intermediates\res\merged\debug -m -J \\?\E:\chapter02\Register\app\build\generated\source\r\debug -F E:\chapter02\Register\app\build\intermediates\res\debug\resources-debug.ap_ --custom-package com.example.dell.register02 -0 apk --output-text-symbols \\?\E:\chapter02\Register\app\build\intermediates\symbols\debug --no-version-vectors} Error:org.gradle.process.internal.ExecException: Process 'command 'E:\AndroidSDK\build-tools\26.0.2\aapt.exe'' finished with non-zero exit value 1 Error:java.util.concurrent.ExecutionException: com.android.ide.common.process.ProcessException: Error while executing process E:\AndroidSDK\build-tools\26.0.2\aapt.exe with arguments {package -f --no-crunch -I E:\AndroidSDK\platforms\android-26\android.jar -M \\?\E:\chapter02\Register\app\build\intermediates\manifests\full\debug\AndroidManifest.xml -S E:\chapter02\Register\app\build\intermediates\res\merged\debug -m -J \\?\E:\chapter02\Register\app\build\generated\source\r\debug -F E:\chapter02\Register\app\build\intermediates\res\debug\resources-debug.ap_ --custom-package com.example.dell.register02 -0 apk --output-text-symbols \\?\E:\chapter02\Register\app\build\intermediates\symbols\debug --no-version-vectors} Error:(165, 31) No resource found that matches the given name (at 'layout_above' with value '@id/btn_submit'). Error:(165, 31) No resource found that matches the given name (at 'layout_above' with value '@id/btn_submit'). E:\chapter02\Register\app\build\intermediates\res\merged\debug\layout\activity_main.xml E:\chapter02\Register\app\src\main\res\layou
最新发布
03-15
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值