我有以下布局文件,由片段显示:
<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>
设计窗口显示正确的渲染:
但是,在运行Android 5.1.1的实际设备上,会呈现以下内容:
我无法弄清楚原因。有人可以帮我弄这个吗?我尝试了许多中心化参数(重力,布局重力,更多我不记得了)。我通过使用LinearLayouts的组合来集中处理,但是布局看起来很混乱也做了这么简单的任务。所以,我正在寻找简单的解决方案。
答案 0 :(得分:2)
设计窗口有时会显示中间布局的结果,但实际(电话/表格)不是......用代码解决问题的一种方法
android:layout_centerInParent="true"
有时设计窗口会在中间屏幕显示内容,但实际上并非如此。例如,当您为适配器执行项目布局时..
答案 1 :(得分:0)
这不是一个真正的答案,但我没有足够的评论代表,但是:
如何添加活动布局文件片段?
E.g你的片段容器真的是Match_Parent吗?如果它在ur活动中包装内容,它将覆盖你给我们的布局文件中的Match_Parent。