【问题标题】:No resource found that matches given name... after upgrade of compileSdkVerion and buildToolsVersion找不到与给定名称匹配的资源...升级 compileSdkVerion 和 buildToolsVersion
【发布时间】:2016-06-21 07:09:57
【问题描述】:

我的 build.gradle 文件中有这两行:

compileSdkVersion 20
buildToolsVersion '21.1.2'

我把它们改成:

compileSdkVersion 23
buildToolsVersion '23.0.2'

我还更改了支持库以匹配构建工具版本:

compile 'com.android.support:support-v13:23.1.0'

现在,在构建我的项目时出现此错误:

Error:(21, 33) No resource found that matches the given name (at 'paddingTop' with value '@dimen/abc_action_bar_default_height').

这与布局文件中的一行有关:

android:paddingTop="@dimen/abc_action_bar_default_height"

我该如何解决这个问题?

【问题讨论】:

标签: android android-studio gradle


【解决方案1】:

您应该使用?attr/actionBarSize作为操作栏大小。

点赞android:paddingTop="?attr/actionBarSize"

支持库现在隐藏 xml 资源。如果你想获得那个维度,你需要使用它。

【讨论】:

    【解决方案2】:

    你应该把 @dimen/abc_action_bar_default_height 改成 ?attr/actionBarSize

    随着您更改支持库版本,您的尺寸也发生了变化。这些值来自支持库中的资源,使用 ?attr/actionBarSize 是避免这种中断的兼容方式。

    您可以在此答案中更好地了解尺寸和主题的工作原理。 What is the size of ActionBar in pixels?

    【讨论】:

      【解决方案3】:

      我遇到了类似的问题,问题在于其他依赖于应用程序版本低于 com.android.support:support-v13:23.1.0 的库,所以我建议转到 github/maven repo您拥有的库,并查看他们是否已将其库更新为较新的版本。如果是,请更新您的依赖项列表

      【讨论】:

        【解决方案4】:

        你可以删除这个项目的附加库试试看。

        【讨论】:

        • 我不明白你的意思
        • 你的sdk最低版本是多少?你可以设置为19或20看看是否还有错误。
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-09-26
        • 2017-08-26
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多