BottomSheet не прозрачен для объявленного "android: background" в styles.xml - PullRequest
0 голосов
/ 19 октября 2019

Я нахожусь в следующей ситуации: у меня есть приложение с белым фоном, поэтому я объявил android: background в стилях xml.

Проблема: Я хочу показать толькобазовый нижний лист, но я заметил, что когда объявляется android: background, нижний лист непрозрачен.

BottomSheet

class SortListBottomSheet : BottomSheetDialogFragment(){
    override fun onCreateView(
        inflater: LayoutInflater,
        container: ViewGroup?,
        savedInstanceState: Bundle?
    ): View? {
        return inflater.inflate(R.layout.sort_list_bottom_sheet, container, false)
    }
}

MainActivity

sortListFab.setOnClickListener {
    val sortListBottomSheet = SortListBottomSheet()
    sortListBottomSheet.show(supportFragmentManager, "test")
}

Styles.xml

    <style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
        <item name="colorPrimary">@color/colorPrimary</item>
        <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
        <item name="colorAccent">@color/colorAccent</item>
        <item name="android:background">@android:color/white</item>
    </style>

Как сделать прозрачный нижний лист?

Спасибо за помощь.

1 Ответ

0 голосов
/ 19 октября 2019

Хорошо, я нашел решение:

Добавьте это к styles.xml

<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
    <item name="bottomSheetDialogTheme">@style/AppBottomSheetDialogTheme</item>
</style>

<style name="AppBottomSheetDialogTheme"
    parent="Theme.Design.Light.BottomSheetDialog">
    <item name="android:background">@android:color/transparent</item>
</style>

Это должно решить проблему.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...