RelativeLayout中不存在循环依赖关系?

时间:2015-03-23 12:34:52

标签: android layout error-handling circular-dependency

  

渲染期间引发异常:RelativeLayout中不存在循环依赖关系   Window>中记录了异常详细信息。显示视图>错误日志   渲染期间引发异常:RelativeLayout中不存在循环依赖关系   Window>中记录了异常详细信息。显示视图>呈现期间引发的错误LogException:RelativeLayout中不存在循环依赖项   Window>中记录了异常详细信息。显示视图>呈现期间引发的错误LogException:RelativeLayout中不存在循环依赖项   Window>中记录了异常详细信息。显示视图>呈现期间引发的错误LogException:RelativeLayout中不存在循环依赖项   Window>中记录了异常详细信息。显示视图>呈现期间引发的错误LogException:RelativeLayout中不存在循环依赖项   Window>中记录了异常详细信息。显示视图>呈现期间引发的错误LogException:RelativeLayout中不存在循环依赖项   Window>中记录了异常详细信息。显示视图>呈现期间引发的错误LogException:RelativeLayout中不存在循环依赖项   Window>中记录了异常详细信息。显示视图>呈现期间引发的错误LogException:RelativeLayout中不存在循环依赖项   Window>中记录了异常详细信息。显示视图>呈现期间引发的错误LogException:RelativeLayout中不存在循环依赖项   Window>中记录了异常详细信息。显示视图>呈现期间引发的错误LogException:RelativeLayout中不存在循环依赖项   Window>中记录了异常详细信息。显示视图>呈现期间引发的错误LogException:RelativeLayout中不存在循环依赖项   Window>中记录了异常详细信息。显示视图>呈现期间引发的错误LogException:RelativeLayout中不存在循环依赖项   Window>中记录了异常详细信息。显示视图>呈现期间引发的错误LogException:RelativeLayout中不存在循环依赖项   Window>中记录了异常详细信息。显示视图>呈现期间引发的错误LogException:RelativeLayout中不存在循环依赖项   Window>中记录了异常详细信息。显示视图>呈现期间引发的错误LogException:RelativeLayout中不存在循环依赖项   Window>中记录了异常详细信息。显示视图>错误日志

块引用

<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="match_parent"
tools:context="${relativePackage}.${activityClass}" 
android:id="@+id/layout">


<TextView
    android:id="@+id/textView1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentEnd="true"
    android:layout_alignParentStart="true"
    android:layout_alignParentTop="true"
    android:layout_marginTop="19dp"
    android:background="@drawable/gradient_style"
    android:gravity="center"
    android:text="@string/accelerometer_text"
    android:textAppearance="?android:attr/textAppearanceLarge" />

<TextView
    android:id="@+id/textView2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentStart="true"
    android:layout_below="@+id/textView1"
    android:layout_marginTop="61dp"
    android:text="@string/x_axis"
    android:background="@drawable/gradient_xyz"
    android:textAppearance="?android:attr/textAppearanceMedium" />

<TextView
    android:id="@+id/x_axis"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignBottom="@+id/textView2"
    android:layout_alignParentEnd="true"
    android:layout_marginStart="18dp"
    android:layout_toEndOf="@+id/textView2"
    android:background="#f00"
    android:text=""
    android:textAppearance="?android:attr/textAppearanceMedium"
    android:textColor="#00f" />

<TextView
    android:id="@+id/textView3"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentStart="true"
    android:layout_below="@+id/textView2"
    android:layout_marginTop="27dp"
    android:layout_toStartOf="@+id/y_axis"
    android:background="@drawable/gradient_xyz"
    android:text="@string/y_axis"
    android:textAppearance="?android:attr/textAppearanceMedium" />
<TextView
    android:id="@+id/y_axis"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_above="@+id/textView4"
    android:layout_alignStart="@+id/x_axis"
    android:layout_alignParentEnd="true"
    android:background="#0f0"
    android:textAppearance="?android:attr/textAppearanceMedium"
    android:textColor="#f00" />

<TextView
    android:id="@+id/textView4"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentStart="true"
    android:layout_alignEnd="@+id/textView3"
    android:layout_below="@+id/textView3"
    android:layout_marginTop="33dp"
    android:background="@drawable/gradient_xyz"
    android:text="@string/z_axis"
    android:textAppearance="?android:attr/textAppearanceMedium" />

<TextView
    android:id="@+id/z_axis"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignBaseline="@+id/textView4"
    android:layout_alignBottom="@+id/textView4"
    android:layout_alignStart="@+id/y_axis"
    android:layout_alignParentEnd="true"
    android:background="#00f"
    android:text=""
    android:textAppearance="?android:attr/textAppearanceMedium"
    android:textColor="#0f0" />

3 个答案:

答案 0 :(得分:1)

你不应该在视图之间添加循环依赖 - 从代码中删除一行 -

remove - `android:layout_above="@+id/textView4"`

从下面看 -

<TextView
android:id="@+id/y_axis"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@+id/textView4"
android:layout_alignStart="@+id/x_axis"
android:layout_alignParentEnd="true"
android:background="#0f0"
android:textAppearance="?android:attr/textAppearanceMedium"
android:textColor="#f00" />

答案 1 :(得分:0)

不允许相对布局中的循环引用或它无效。

例如,当视图B是layout_below视图A时,视图A不能再在其下面引用视图B,alignRight等。这也可以存在于多个视图之间:引用B引用C.在该场景中C不能引用A是因为循环依赖。

从此处获取更多详细信息..

Exception raised during rendering: Circular dependencies cannot exist in RelativeLayout Exception details are logged in Window > Show View > Error Log

答案 2 :(得分:0)

问题是你的对齐方式不明确,换句话说,你的.xml中的某个地方,你告诉编译器要做两件事情的布局相互矛盾。您告诉y_axis TextView textView4,同时您告诉textView4 / strong> textView3。这两个都不是真的,因此创造了循环依赖,其中一个需要改变。