我尝试在布局中添加底页,因此我将所有片段的布局放在CoordinatorLayout中:
<android.support.design.widget.CoordinatorLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
xmlns:tools="http://schemas.android.com/tools">
<RelativeLayout
android:id="@+id/myOriginalLayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:animateLayoutChanges="true"
android:clickable="true">
....
....
</RelativeLayout>
<FrameLayout
android:id="@+id/bottom_sheet"
android:layout_width="match_parent"
android:layout_height="150dp"
app:layout_behavior="android.support.design.widget.BottomSheetBehavior">
</FrameLayout>
</android.support.design.widget.CoordinatorLayout>
当我尝试给布局充气时,它会继续崩溃,并说明Error inflating class android.support.design.widget.CoordinatorLayout
。
答案 0 :(得分:0)
通过使用
theme
更改Activity
来使用此AppCompatActivity
。
<style name="Theme.DesignDemo" parent="Base.Theme.DesignDemo">
</style>
<style name="Base.Theme.DesignDemo" parent="Theme.AppCompat.Light.NoActionBar">
<item name="colorPrimary">#673AB7</item>
<item name="colorPrimaryDark">#512DA8</item>
<item name="colorAccent">#FF4081</item>
<item name="android:windowBackground">@color/window_background</item>
</style>
将您的
buildToolsVersion
更改为23.0.3
。然后Sync
再次Gradle
。
android {
compileSdkVersion 23
buildToolsVersion "23.0.3"
defaultConfig {
applicationId ""
minSdkVersion 15
targetSdkVersion 23
versionCode 1
versionName "1.0"
}
}
并添加此依赖项。
dependencies {
compile 'com.android.support:appcompat-v7:23.4.0'
compile 'com.android.support:design:23.4.0'
compile 'com.android.support:cardview-v7:23.4.0'
}
答案 1 :(得分:0)
解决问题的解决方案:
Activity
,而不是AppCompatActivity
,因此必须进行更改。但是,将Activity
更改为AppCompatActivity
时,由于我使用的是常规ActionBar
,我仍然会崩溃。
所以我采取的步骤来解决这个问题:
a. call `getSupportActionBar()` instead of `getActionBar()`
b. change `ActionBar` to `support.v7.app.ActionBar`