Ошибка при использовании любых элементов библиотеки поддержки дизайна Android
Ошибка раздувания чего-либо из библиотеки поддержки дизайна
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 все в курсе.
![SDK Manager]()
Ответы
Ответ 1
В дополнение к ответу 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
Ответ 2
Обновление библиотеки поддержки в SDK-менеджере в разделе "Дополнительно" > "Поддержка Android-репозитория и поддержка Android", которая работает для меня;)
и не забудьте добавить компиляцию 'com.android.support:design:22.2.0' на app.gradle и sync
Ответ 3
В моем случае такая же ошибка при использовании 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"/>
Ответ 4
Помните, что даже если вы используете виджет FloatingActionButton
, который находится в библиотеке поддержки дизайна, вам все равно придется использовать srcCompat
для ссылки на ваш значок, если вы хотите, чтобы FAB работал на более старых устройствах.
<android.support.design.widget.FloatingActionButton
app:srcCompat="@drawable/ic_keyboard_arrow_right_black_24dp"
... />
Ответ 5
Одна вещь, которую нужно проверить, - это то, что вы правильно применили свою тему в файле AndroidManifest.xml. В моем случае я опустил атрибут android: theme. Например:
<application ... android:theme="@style/Your.Theme.Here" ... >