我有一个带有自定义布局(包括滚动视图)的Alertdialog。 当对话框出现时,滚动视图被“裁剪”,并且似乎锚定在屏幕的顶部,而不是对话框的顶部
我在SE中搜索了类似的问题,但找不到任何问题。 使用弹出窗口具有完全相同的问题。 这是我的XML:
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/scroller"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/rock">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:gravity="center"
android:orientation="vertical"
android:padding="10dp">
<TextView
android:id="@+id/title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:background="@drawable/scrollbutton"
android:padding="12dp"
android:text="Room Number"
android:textColor="@android:color/black"
android:textSize="22sp" />
<TextView
android:id="@+id/contents"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:background="@drawable/scrollbutton"
android:gravity="center"
android:padding="12dp"
android:text="Here be Monsters" />
</LinearLayout>
</ScrollView>
这是对话框代码:
LayoutInflater inflater = (LayoutInflater) this.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View layout = inflater.inflate(R.layout.contents, null);
AlertDialog.Builder alertDialog = new AlertDialog.Builder(this);
alertDialog.setView(layout);
AlertDialog alert = alertDialog.create();
alert.requestWindowFeature(Window.FEATURE_NO_TITLE);
alert.show();
Window window = alert.getWindow();
window.setLayout((int)(screenWidth*.8), (int)(screenHeight*.8));
我尝试将ScrollView作为充气机中的root_view添加,还围绕ScrollView添加LinearLayout并将其设置为root_view,但这不会改变结果