我试图实现新的BottomSheetDialog,但是当我调用.show()
时,它会显示背景阴影,但不显示我的布局。
这是我的代码
<?xml version="1.0" encoding="utf-8"?>
<android.support.v4.widget.NestedScrollView
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/white">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:paddingStart="8dp"
android:paddingEnd="8dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Notes"
android:layout_alignParentStart="true"
android:layout_centerVertical="true"
android:textColor="@android:color/black"/>
<Switch
android:id="@+id/notes"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_alignParentEnd="true"/>
</RelativeLayout>
</RelativeLayout>
</android.support.v4.widget.NestedScrollView>
然后:
mSettingsDialog = new BottomSheetDialog(this);
View v = getLayoutInflater().inflate(R.layout.reader_settings, null);
mSettingsDialog.setContentView(v);
mSettingsDialog.show();
如何解决此问题?
答案 0 :(得分:0)
我遇到了这个问题,我的原因是
对话框XML名称与其他模块XML文件名相同,因此请尝试将其重命名为另一个
检查布局文件,也许它有一些错误,请保留最简单的布局对其进行测试。
答案 1 :(得分:0)
我们可以检查的几个步骤:
newInstance
并对其调用 show()
方法。LinearLayoutCompat
作为根布局。match_parent
高度。dismiss()
或 cancel()
。