以下布局有什么问题?它不是在5.1中安装android中的relativelayout。在设计窗口看起来很好

时间:2017-02-03 17:10:49

标签: android android-layout android-5.0-lollipop android-relativelayout

我有以下布局文件,由片段显示:

<RelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <RelativeLayout
        android:id="@+id/add_printer_fragment_inner_rl"
        android:layout_width="200dp"
        android:layout_height="200dp"
        android:layout_gravity="center"
        android:layout_centerInParent="true"
        android:layout_centerVertical="true"
        android:layout_centerHorizontal="true">

        <ImageView
            android:layout_centerInParent="true"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@drawable/ic_loading_dark"
            android:id="@+id/add_printer_fragment_iv"
            android:layout_centerVertical="true"
            android:layout_centerHorizontal="true" />

        <TextView
            android:text="TextView"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/add_printer_fragment_tv"
            android:layout_below="@+id/add_printer_fragment_iv"
            android:layout_centerHorizontal="true" />
    </RelativeLayout>
</RelativeLayout>

设计窗口显示正确的渲染:

enter image description here

但是,在运行Android 5.1.1的实际设备上,会呈现以下内容: enter image description here

我无法弄清楚原因。有人可以帮我弄这个吗?我尝试了许多中心化参数(重力,布局重力,更多我不记得了)。我通过使用LinearLayouts的组合来集中处理,但是布局看起来很混乱也做了这么简单的任务。所以,我正在寻找简单的解决方案。

2 个答案:

答案 0 :(得分:2)

设计窗口有时会显示中间布局的结果,但实际(电话/表格)不是......用代码解决问题的一种方法

android:layout_centerInParent="true"

有时设计窗口会在中间屏幕显示内容,但实际上并非如此。例如,当您为适配器执行项目布局时..

答案 1 :(得分:0)

这不是一个真正的答案,但我没有足够的评论代表,但是:

如何添加活动布局文件片段?

E.g你的片段容器真的是Match_Parent吗?如果它在ur活动中包装内容,它将覆盖你给我们的布局文件中的Match_Parent。