Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/234.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 在“自定义警报”对话框上使用约束布局_Android_Android Layout_Android Custom View_Android Alertdialog_Android Constraintlayout - Fatal编程技术网

Android 在“自定义警报”对话框上使用约束布局

Android 在“自定义警报”对话框上使用约束布局,android,android-layout,android-custom-view,android-alertdialog,android-constraintlayout,Android,Android Layout,Android Custom View,Android Alertdialog,Android Constraintlayout,我正在尝试为自定义警报对话框使用约束布局(天知道为什么,我总是遇到问题),并且我无法让视图显示任何内容,除非至少有一个元素的布局高度设置为“包裹内容”且不匹配约束。下面是我的XML: <?xml version="1.0" encoding="utf-8"?> <android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android

我正在尝试为自定义警报对话框使用约束布局(天知道为什么,我总是遇到问题),并且我无法让视图显示任何内容,除非至少有一个元素的布局高度设置为“包裹内容”且不匹配约束。下面是我的XML:

<?xml version="1.0" encoding="utf-8"?>
    <android.support.constraint.ConstraintLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <Spinner
        android:id="@+id/shapeSpinner"
        android:layout_width="0dp"
        android:layout_height="0dp"
        android:layout_marginBottom="8dp"
        android:layout_marginEnd="8dp"
        android:layout_marginStart="8dp"
        android:layout_marginTop="8dp"
        app:layout_constraintBottom_toTopOf="@+id/gH3"
        app:layout_constraintEnd_toStartOf="@+id/gV2"
        app:layout_constraintStart_toStartOf="@+id/gV1"
        app:layout_constraintTop_toTopOf="@+id/gHBreak">

    </Spinner>

    <android.support.constraint.Guideline
        android:id="@+id/guidelineSideLeft"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        app:layout_constraintGuide_percent="0.05" />
    <android.support.constraint.Guideline
        android:id="@+id/guidelineSideRight"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        app:layout_constraintGuide_percent="0.95" />

    <android.support.constraint.Guideline
        android:id="@+id/gH1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        app:layout_constraintGuide_percent="0.1" />
    <android.support.constraint.Guideline
        android:id="@+id/gH2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        app:layout_constraintGuide_percent="0.2" />
    <android.support.constraint.Guideline
        android:id="@+id/gHBreak"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        app:layout_constraintGuide_percent="0.25" />
    <android.support.constraint.Guideline
        android:id="@+id/gH3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        app:layout_constraintGuide_percent="0.35" />
    <android.support.constraint.Guideline
        android:id="@+id/gH4"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        app:layout_constraintGuide_percent="0.45" />
    <android.support.constraint.Guideline
        android:id="@+id/gH5"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        app:layout_constraintGuide_percent="0.55" />
    <android.support.constraint.Guideline
        android:id="@+id/gEnd"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        app:layout_constraintGuide_percent="0.60" />

    <android.support.constraint.Guideline
        android:id="@+id/gV1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        app:layout_constraintGuide_percent="0.35" />
    <android.support.constraint.Guideline
        android:id="@+id/gV2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        app:layout_constraintGuide_percent="0.65" />

    <CheckBox
        android:id="@+id/shapeCheckBox"
        android:layout_width="0dp"
        android:layout_height="0dp"
        android:layout_marginBottom="8dp"
        android:layout_marginEnd="8dp"
        android:layout_marginStart="8dp"
        android:layout_marginTop="8dp"
        android:text="Shape"
        app:layout_constraintBottom_toTopOf="@+id/gH1"
        app:layout_constraintEnd_toStartOf="@+id/gV1"
        app:layout_constraintStart_toStartOf="@+id/guidelineSideLeft"
        app:layout_constraintTop_toTopOf="parent" />

    <CheckBox
        android:id="@+id/colourCheckBox"
        android:layout_width="0dp"
        android:layout_height="0dp"
        android:layout_marginBottom="8dp"
        android:layout_marginEnd="8dp"
        android:layout_marginStart="8dp"
        android:layout_marginTop="8dp"
        android:text="Colour"
        app:layout_constraintBottom_toTopOf="@+id/gH1"
        app:layout_constraintEnd_toStartOf="@+id/gV2"
        app:layout_constraintStart_toStartOf="@+id/gV1"
        app:layout_constraintTop_toTopOf="parent" />

    <CheckBox
        android:id="@+id/radiusCheckBox"
        android:layout_width="0dp"
        android:layout_height="0dp"
        android:layout_marginBottom="8dp"
        android:layout_marginEnd="8dp"
        android:layout_marginStart="8dp"
        android:layout_marginTop="8dp"
        android:text="Radius"
        app:layout_constraintBottom_toTopOf="@+id/gH1"
        app:layout_constraintEnd_toStartOf="@+id/guidelineSideRight"
        app:layout_constraintStart_toStartOf="@+id/gV2"
        app:layout_constraintTop_toTopOf="parent" />

    <CheckBox
        android:id="@+id/lWCheckBox"
        android:layout_width="0dp"
        android:layout_height="0dp"
        android:layout_marginBottom="8dp"
        android:layout_marginEnd="8dp"
        android:layout_marginStart="8dp"
        android:layout_marginTop="8dp"
        android:text="Width/Height"
        app:layout_constraintBottom_toTopOf="@+id/gH2"
        app:layout_constraintEnd_toStartOf="@+id/gV1"
        app:layout_constraintStart_toStartOf="@+id/guidelineSideLeft"
        app:layout_constraintTop_toTopOf="@+id/gH1" />

    <CheckBox
        android:id="@+id/lengthCheckBox"
        android:layout_width="0dp"
        android:layout_height="0dp"
        android:layout_marginBottom="8dp"
        android:layout_marginEnd="8dp"
        android:layout_marginStart="8dp"
        android:layout_marginTop="8dp"
        android:text="Length"
        app:layout_constraintBottom_toTopOf="@+id/gH2"
        app:layout_constraintEnd_toStartOf="@+id/gV2"
        app:layout_constraintStart_toStartOf="@+id/gV1"
        app:layout_constraintTop_toTopOf="@+id/gH1" />

    <TextView
        android:id="@+id/shapesText"
        android:layout_width="0dp"
        android:layout_height="0dp"
        android:layout_marginBottom="8dp"
        android:layout_marginEnd="8dp"
        android:layout_marginStart="8dp"
        android:layout_marginTop="8dp"
        android:text="Shape"
        android:textAlignment="center"
        android:textSize="24sp"
        app:layout_constraintBottom_toTopOf="@+id/gH3"
        app:layout_constraintEnd_toStartOf="@+id/gV1"
        app:layout_constraintStart_toStartOf="@+id/guidelineSideLeft"
        app:layout_constraintTop_toTopOf="@+id/gHBreak" />

    <TextView
        android:id="@+id/colourText"
        android:layout_width="0dp"
        android:layout_height="0dp"
        android:layout_marginBottom="8dp"
        android:layout_marginEnd="8dp"
        android:layout_marginStart="8dp"
        android:layout_marginTop="8dp"
        android:text="Colour"
        android:textAlignment="center"
        android:textSize="24sp"
        app:layout_constraintBottom_toTopOf="@+id/gH4"
        app:layout_constraintEnd_toStartOf="@+id/gV1"
        app:layout_constraintStart_toStartOf="@+id/guidelineSideLeft"
        app:layout_constraintTop_toTopOf="@+id/gH3" />

</android.support.constraint.ConstraintLayout>
这就是我运行它时的样子:

我做错了什么?我有

compile 'com.android.support.constraint:constraint-layout:1.1.0'  

根据my build.gradle文件。

因为您的布局没有任何固有的高度/宽度,而是通过
匹配父级
高度/宽度依赖于父级的大小。如果不在膨胀中指定父项,则没有可用的大小,因此默认为零。您将需要提供一个父参数作为

View dialogView = inflater.inflate(R.layout.filter,null);
而不是
null

我不是100%确定应该采取什么方法。下面是一个关于堆栈溢出的答案,概述了一种方法

View dialogView = inflater.inflate(R.layout.filter,null);