BottomSheetBehavior 不在 androidX 库中 [英] BottomSheetBehavior not in androidX libraries
问题描述
我将 BottomSheetBehavior
与原始支持库一起使用:
I was using the BottomSheetBehavior
with the original support library:
implementation 'com.android.support:design:27.1.1'
当我迁移到使用新的 androidx
库时,虽然缺少 BottomSheetBehavior
.来自上述支持库的映射不在 AndroidX 重构列表中要么,但迁移工具将其删除.
When I migrated to use the new androidx
libraries though the BottomSheetBehavior
is missing. The mapping from the above support library isn't in the AndroidX Refactoring List either, but the migration tool removed it.
在新的 androidx
库中包含 BottomSheetBehavior 是我遗漏了什么.
What am I missing to include the BottomSheetBehavior with the new androidx
libraries.
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.google.android.material:material:1.0.0-beta01'
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
// ReactiveX
implementation 'io.reactivex.rxjava2:rxandroid:2.0.2'
implementation 'io.reactivex.rxjava2:rxkotlin:2.2.0'
implementation 'com.android.support:design:28.1.0'
// Android Compatability Libraries
// Version: https://developer.android.com/topic/libraries/support-library/refactor
implementation 'androidx.appcompat:appcompat:1.0.0-beta01'
implementation 'androidx.constraintlayout:constraintlayout:2.0.0-alpha1'
implementation 'androidx.legacy:legacy-support-v4:1.0.0-beta01'
implementation 'androidx.lifecycle:lifecycle-extensions:2.0.0-beta01'
implementation 'androidx.recyclerview:recyclerview:1.0.0-beta01'
// Android Navigation Component
// Check here for updated version info - will move to androidx soon.
// https://developer.android.com/topic/libraries/architecture/adding-components
def nav_version = "1.0.0-alpha04"
// use -ktx for Kotlin
implementation "android.arch.navigation:navigation-fragment-ktx:$nav_version"
implementation "android.arch.navigation:navigation-ui-ktx:$nav_version"
androidTestImplementation "android.arch.navigation:navigation-testing-ktx:$nav_version"
// Testing
testImplementation 'junit:junit:4.12'
androidTestImplementation 'androidx.test:runner:1.1.0-alpha4'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.1.0-alpha4'
}
推荐答案
原来是Android Studio中的重构工具Refactor >迁移到 AndroidX
未正确迁移 BottomSheetBehaviour 的 XML.
It turns out that the refactor tool in Android Studio Refactor > Migrate to AndroidX
didn't correctly migrate the XML for the BottomSheetBehaviour.
旧位置是android.support.design.widget.BottomSheetBehavior
,没有被迁移工具修改.原始 XML 是:
The old location was android.support.design.widget.BottomSheetBehavior
, and was not modified by the migration tool. The original XML was:
<fragment
android:id="@+id/player_bottom_sheet_fragment"
android:name="app.rxsongbrowsertrials.ui.player.PlayerToggleFragment"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:behavior_hideable="false"
app:behavior_peekHeight="56dp"
app:layout_behavior="android.support.design.widget.BottomSheetBehavior"
/>
新的位置是com.google.android.material.bottomsheet.BottomSheetBehavior
,所以布局需要变成:
The new location is com.google.android.material.bottomsheet.BottomSheetBehavior
, so the layout needs to become:
<fragment
android:id="@+id/player_bottom_sheet_fragment"
android:name="app.rxsongbrowsertrials.ui.player.PlayerToggleFragment"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:behavior_hideable="false"
app:behavior_peekHeight="56dp"
app:layout_behavior="com.google.android.material.bottomsheet.BottomSheetBehavior"
/>
这篇关于BottomSheetBehavior 不在 androidX 库中的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!