从设计支持库中泄露任何内容时出错
XML
<android.support.design.widget.FloatingActionButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
的build.gradle
dependencies {
compile 'com.android.support:support-v4:22.2.0'
compile 'com.android.support:design:22.2.0'
compile 'com.android.support:multidex:1.0.1'
compile 'com.android.support:support-v13:22.2.0'
compile 'com.android.support:appcompat-v7:22.2.0'
项目build.gradle
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:1.2.3'
}
}
allprojects {
repositories {
mavenCentral()
}
}
错误:
Binary XML file line #115: Error inflating class
android.support.design.widget.FloatingActionButton
我的Sdk经理一切都是最新的
答案 0 :(得分:26)
除了Emmanuel的回答,您还可能面临以下问题。
设计库组件似乎需要一种基于AppCompat主题的样式。因此,请尝试使用“Theme.AppCompat。[...]”作为style.xml中的父级。
示例:
<!-- Base application theme. -->
<style name="AppTheme" parent="Base.AppTheme">
<!-- Customize your theme here. -->
</style>
<style name="Base.AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<item name="android:colorPrimary">@color/primary</item>
<item name="android:colorPrimaryDark">@color/primary_dark</item>
<item name="android:colorAccent">@color/accent</item>
</style>
然后将以下内容添加到build.gradle中:
compile 'com.android.support:appcompat-v7:22.2.0'
此外,您还应该更新gradle中的以下行:
classpath 'com.android.tools.build:gradle:1.2.3'
compileSdkVersion 22
buildToolsVersion '22.0.1'
targetSdkVersion 22
答案 1 :(得分:11)
在Extras中更新SDK Manager上的支持库&gt; Android支持存储库和Android支持库,适用于我;)
并且不要忘记在app.gradle上添加编译'com.android.support:design:22.2.0'并同步
答案 2 :(得分:5)
在我的情况下,使用 android.support.design.widget.NavigationView 时的同样崩溃是通过将 app:itemTextColor 属性添加到布局xml来解决的:
<android.support.design.widget.NavigationView
android:id="@+id/navigation"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="start"
android:fitsSystemWindows="true"
app:headerLayout="@layout/nav_header"
app:itemTextColor="?android:textColorPrimary"
app:menu="@menu/drawer"/>
答案 3 :(得分:3)
请注意,即使您使用的是设计支持库中的FloatingActionButton
窗口小部件,如果您希望FAB可以使用较旧版本,仍需使用srcCompat
来引用您的图标设备
<android.support.design.widget.FloatingActionButton
app:srcCompat="@drawable/ic_keyboard_arrow_right_black_24dp"
... />
答案 4 :(得分:0)
仔细检查一件事是您已在AndroidManifest.xml文件中正确应用了主题。就我而言,我省略了android:theme属性。 E.g:
<application ... android:theme="@style/Your.Theme.Here" ... >