难以理解layout_alignWithParentIfMissing

我不明白的TextView属性layout_alignWithParentIfMissing的含义。

我读了下面的文档 :

android:layout_alignWithParentIfMissing

如果设置为true,当无法findlayout_toLeftOflayout_toRightOf等的锚点时,父级将用作锚点。

必须是布尔值,无论是true还是false

请给我解释一下。

  • 如何在代码中创build真正的小button?
  • 滑动删除listitem
  • 如何将WebView的背景颜色设置为hex值?
  • 无法从FrameLayout中删除片段?
  • Android软键盘未在webView`中打开
  • 在android中更改edittext的背景颜色
  • 如何dynamic添加视图到已经在xml布局中声明的RelativeLayout?
  • Android响应式布局
  • 这仅适用于使用RelativeLayout的情况。

    如果将元素设置为toLeftOf其他元素,则表示它将位于此元素的左侧。

    但是,如果这个元素将会丢失,因为你将它删除,例如它将会与父alignment。

    以这个例子

     <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" > <TextView android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_alignParentTop="true" android:layout_marginTop="102dp" android:text="Large Text" android:textAppearance="?android:attr/textAppearanceLarge" /> <TextView android:id="@+id/textView2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignWithParentIfMissing="true" android:layout_alignBottom="@+id/textView1" android:layout_toRightOf="@+id/textView1" android:text="Large Text" android:textAppearance="?android:attr/textAppearanceLarge" /> </RelativeLayout> 

    看看会发生什么如果你删除textView1但不要触摸textView2。

    它会在左下方(不是正确的,因为它在父母的内部)

    Android将定位元素相对于父元素,而不是它应该是因为它是缺less的元素。

    如果这是错误的参数有关缺less的元素将被忽略。

    另一个样本。 我刚刚用过。

     <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="wrap_content" android:padding="6dip" > <Button android:id="@+id/streamOverflow" android:layout_width="50dp" android:layout_height="30dp" android:layout_alignParentRight="true" android:background="@drawable/ic_action_overflow" android:focusable="false" /> <TextView android:id="@+id/delete_time" style="?android:attr/textAppearanceSmall" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Disappears " android:layout_toLeftOf="@id/streamOverflow" android:layout_alignWithParentIfMissing="true" /> </RelativeLayout> 

    如果“streamOverflow”缺失,“delete_time”textview的行为就像有android:layout_alignParentRight =“true”属性。

    在相对布局中,可以相对于另一个视图指定视图的位置。

    标签layout_toLeftOflayout_toRightOf将视图相对于“锚点”视图对象定位。 当这个锚点视图丢失时,标记alignWithParentIfMissing将使您的视图与父视图alignment。