Android 实际设备上支持库空白屏幕的百分比

Android Percent Support Library Blank Screen on Actual Device

我尝试使用详述 here and here 的百分比支持库。它在 Android Studio 设计器中运行良好,但当我尝试将我的应用程序安装到我的 phone 中时,除了空屏幕外什么也没有显示。可能是什么问题?

编辑:

我在 gradle 文件依赖项中添加了以下行。

compile 'com.android.support:appcompat-v7:23.0.0'
compile 'com.android.support:support-v4:23.0.0'
compile 'com.android.support:design:23.0.0'
compile 'com.android.support:percent:23.0.0'

这是我的片段布局:

<RelativeLayout 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" tools:context="org.atpms.fairfare.ReportFragment"
    android:id="@+id/fragment_report" >

    <ProgressBar android:id="@+id/report_progress" style="?android:attr/progressBarStyleLarge"
        android:layout_width="wrap_content" android:layout_height="match_parent"
        android:layout_marginBottom="8dp" android:visibility="gone"
        android:layout_centerHorizontal="true"
        android:layout_centerVertical="true" />

    <RelativeLayout
        android:id="@+id/report_form"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:gravity="center">

        <RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_above="@+id/reportButton"
            android:gravity="center">

            <ImageView
                android:id="@+id/report_background"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentTop="true"
                android:src="@drawable/report"
                android:adjustViewBounds="true" />

            <android.support.percent.PercentRelativeLayout
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:layout_alignTop="@+id/report_background"
                android:layout_alignBottom="@+id/report_background"
                android:layout_alignLeft="@+id/report_background"
                android:layout_alignStart="@+id/report_background"
                android:layout_alignRight="@+id/report_background"
                android:layout_alignEnd="@+id/report_background">

                <EditText
                    android:id="@+id/plateNumberField"
                    android:layout_width="0dp"
                    android:layout_height="0dp"
                    app:layout_widthPercent="58%"
                    app:layout_heightPercent="14%"
                    app:layout_marginTopPercent="20%"
                    app:layout_marginLeftPercent="36%"
                    android:textColor="@color/plate_number"
                    android:background="@null"
                    android:gravity="center"
                    android:textSize="24sp"
                    tools:ignore="TextFields"/>

                <ImageView
                    android:id="@+id/meterPictureButton"
                    android:layout_width="0dp"
                    android:layout_height="0dp"
                    app:layout_widthPercent="12%"
                    app:layout_heightPercent="15.5%"
                    app:layout_marginTopPercent="38%"
                    app:layout_marginLeftPercent="84%"
                    android:src="@drawable/camera" />

                <ImageView
                    android:id="@+id/meterPicture"
                    android:layout_width="0dp"
                    android:layout_height="0dp"
                    app:layout_widthPercent="97.2%"
                    app:layout_heightPercent="42%"
                    app:layout_marginTopPercent="55.8%"
                    app:layout_marginLeftPercent="1.6%"
                    android:scaleType="fitXY"
                    tools:ignore="ContentDescription" />

            </android.support.percent.PercentRelativeLayout>

        </RelativeLayout>

        <Button
            android:id="@+id/reportButton"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="@string/report"
            android:layout_alignParentBottom="true"
            android:layout_marginTop="10dp"
            android:layout_marginBottom="10dp"
            android:layout_marginLeft="30dp"
            android:layout_marginRight="30dp"
            android:background="@drawable/report_button"
            android:textSize="20sp"
            android:paddingTop="8dp"
            android:paddingBottom="8dp"
            android:textColor="@color/button_text"
            android:textAllCaps="false"
            android:gravity="center"
            tools:ignore="UnusedAttribute" />

    </RelativeLayout>

</RelativeLayout>

更新:

好的,我已经使用 setContentViewActivity 扩展了完全相同的布局,并且效果很好。似乎只有当我尝试在 Fragment 布局中使用 PercentRelativeLayout 时才会出现问题。 LayoutInflater 似乎没有正确地使用 PercentRelativeLayout 元素扩充布局,但我仍然不确定并继续调查。

这不是一个很好的解决方案,但我通过删除片段并使其成为一个完整的 activity.

解决了这个问题