我的对话框布局包含:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">
对话框仍然显示为与其内容一样小。
我必须这样做:
dialog.getWindow().setLayout(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT);
...在onCreateDialog回调中,以便填充屏幕。
我在google开发网站上找不到任何对此行为的引用。
答案 0 :(得分:1)
经过多次试验后回答我自己的问题。问题与使用Dialog类而不是AlertDialog有关。
简而言之,它没有用,因为我没有使用正确的工具和方法。解决方案是:继续使用Dialog类,然后使用d.getWindow()强制它,并从那里修改尺寸以使用AlertDialog并使布局膨胀:
LayoutInflater inflater = (LayoutInflater) getLayoutInflater();
View layout = inflater.inflate(R.layout.about, null);
AlertDialog.Builder builder = new AlertDialog.Builder(this);
此链接有很多帮助:Why does LayoutInflater ignore the layout_width and layout_height layout parameters I've specified?