gpt4 book ai didi

android - 升级到 appcompat v24 后找不到与给定名称匹配的资源

转载 作者:行者123 更新时间:2023-11-30 01:07:47 24 4
gpt4 key购买 nike

在 Android 上定义折叠工具栏时,我在 app:toolbarId 上收到此错误。如下所示,工具栏已定义。我注意到我可以通过完全省略工具栏的 ID 来解决它(然后它采用它遇到的第一个工具栏)但我无法弄清楚为什么它停止工作以及是否有任何我遗漏的......有什么想法吗?

    <android.support.design.widget.CollapsingToolbarLayout
app:toolbarId="@id/toolbar"
... >

<ImageView
... />

<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
... />

</android.support.design.widget.CollapsingToolbarLayout>

最佳答案

原来这个问题是前向引用。不是 v23/v24 问题,而是我并行进行的一些其他更改的结果...最初,此布局 XML 并不是(按字母顺序排列的)布局 XML 列表中的第一个,因此有一个先前的布局 XML(属于其他一些 Activity ) 定义一个 @id/toolbar。这足以让 gradle 接受此 Activity 中的 app:toolbarId="@id/toolbar" 作为有效引用。幸运的是(或不是......)在运行时它仍然引用了正确的工具栏 - 此 Activity 的 @id/toolbar - 所以我没有注意到我的(前向引用)错误。

修复很简单——将“+”移动到 app;toolbarId 中的(第一个)引用(这是我一开始就应该做的)。见下文:

    <android.support.design.widget.CollapsingToolbarLayout
app:toolbarId="@+id/toolbar"
... >

<ImageView
... />

<android.support.v7.widget.Toolbar
android:id="@id/toolbar"
... />

</android.support.design.widget.CollapsingToolbarLayout>

关于android - 升级到 appcompat v24 后找不到与给定名称匹配的资源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38727407/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com