我是一名新的Android开发人员。当我运行我的应用程序时,我收到此错误:“渲染渲染期间引发的问题异常:在RelativeLayout(详细信息)中不存在循环依赖项” 任何人都可以帮我解决我的XML代码吗? 为什么我出现循环依赖错误?
<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"
android:background="@drawable/gradient" >
<View android:id="@+id/box3"
android:layout_width="290dp"
android:layout_height="match_parent"
android:background="#80000000"
android:alpha="0.3"
android:paddingBottom="10dp"
android:layout_alignParentTop="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_alignParentRight="true"
android:layout_alignParentEnd="true" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/relativeLayout"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_alignParentTop="true">
<View android:id="@+id/rectangle_at_the_top"
android:layout_width="match_parent"
android:layout_height="45dp"
android:visibility="visible"
android:background="@color/gold"
android:layout_alignParentTop="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true" />
<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_marginTop="30dp"
android:id="@+id/radioButtons"
android:layout_marginLeft="50dp"
android:layout_centerInParent="true">
</RelativeLayout>
<Button
android:typeface ="sans"
android:background="@drawable/roundcornor_button"
android:layout_width="300dp"
android:textAllCaps="false"
android:layout_height="wrap_content"
android:text="Submit"
android:textColor="@color/black"
android:id="@+id/submitButton"
android:backgroundTint="@color/gold"
android:textSize="20dp"
android:layout_below="@+id/radioGroup"
android:layout_centerHorizontal="true"
android:layout_marginTop="31dp" />
<Button
android:text=""
android:layout_height="50dp"
android:layout_width="127dp"
android:id="@+id/button6"
android:textSize="6pt"
android:textColor="@color/white"
android:background="#545454"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
android:layout_alignParentEnd="true" />
<Button
android:text=""
android:layout_height="50dp"
android:layout_width="127dp"
android:id="@+id/budgetbutton"
android:textColor="@color/white"
android:background="#545454"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true" />
<Button
android:layout_weight=".30"
android:text="Sign Up"
android:layout_height="50dp"
android:layout_width="125dp"
android:id="@+id/middlebutton"
android:background="#545454"
android:textColor="@color/white"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:layout_marginBottom="56dp" />
<RadioGroup
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/radioGroup"
android:layout_marginBottom="67dp"
android:layout_above="@+id/submitButton"
android:layout_alignLeft="@+id/radioButtons"
android:layout_alignStart="@+id/radioButtons">
<RadioButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/fivePercent"
android:text="Yes"
android:textSize="25dp"
android:checked="false"
android:textColor="@color/white"
android:buttonTint="@color/white" />
<RadioButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@id/somewhat"
android:text="Somewhat"
android:textSize="25dp"
android:layout_below="@+id/fivePercent"
android:layout_marginTop="35dp"
android:textColor="@color/white"
android:buttonTint="@color/white"/>
<RadioButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/tenPercent"
android:text="No"
android:textSize="25dp"
android:layout_below="@+id/fivePercent"
android:layout_marginTop="35dp"
android:textColor="@color/white"
android:buttonTint="@color/white"/>
</RadioGroup>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Are"
android:textSize="33dp"
android:textColor="@color/white"
android:gravity="center"
android:id="@+id/question"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="84dp"
android:fontFamily="sans-serif-light" />
</RelativeLayout>
</RelativeLayout>
答案 0 :(得分:1)
看起来你的XML代码中有一个循环引用。
标识为submitButton
的按钮引用radioGroup
中的android:layout_below="@+id/radioGroup"
,radioGroup
引用submitButton
中的android:layout_above="@+id/submitButton"
。
删除其中任何一个,你就可以了。
答案 1 :(得分:0)
<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_marginTop="30dp"
android:id="@+id/radioButtons"
android:layout_marginLeft="50dp"
android:layout_centerInParent="true">
</RelativeLayout>
您有android:layout_alignParentLeft="true"
和android:layout_centerInParent="true"
在一起并且相互冲突
您想要android:layout_centerHorizontal="true"
吗?
此外,根据RelativeLayout的名称,您似乎想要将单选按钮放在该布局中。所以你可能想做
...
<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_marginTop="30dp"
android:id="@+id/radioButtons"
android:layout_marginLeft="50dp"
android:layout_centerHorizontal="true">
<Button
android:typeface ="sans"
android:background="@drawable/roundcornor_button"
android:layout_width="300dp"
android:textAllCaps="false"
android:layout_height="wrap_content"
android:text="Submit"
android:textColor="@color/black"
android:id="@+id/submitButton"
android:backgroundTint="@color/gold"
android:textSize="20dp"
android:layout_below="@+id/radioGroup"
android:layout_centerHorizontal="true"
android:layout_marginTop="31dp" />
<Button
android:text=""
android:layout_height="50dp"
android:layout_width="127dp"
android:id="@+id/button6"
android:textSize="6pt"
android:textColor="@color/white"
android:background="#545454"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
android:layout_alignParentEnd="true" />
<Button
android:text=""
android:layout_height="50dp"
android:layout_width="127dp"
android:id="@+id/budgetbutton"
android:textColor="@color/white"
android:background="#545454"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true" />
<Button
android:layout_weight=".30"
android:text="Sign Up"
android:layout_height="50dp"
android:layout_width="125dp"
android:id="@+id/middlebutton"
android:background="#545454"
android:textColor="@color/white"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:layout_marginBottom="56dp" />
<RadioGroup
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/radioGroup"
android:layout_marginBottom="67dp"
android:layout_above="@+id/submitButton"
android:layout_alignLeft="@+id/radioButtons"
android:layout_alignStart="@+id/radioButtons">
<RadioButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/fivePercent"
android:text="Yes"
android:textSize="25dp"
android:checked="false"
android:textColor="@color/white"
android:buttonTint="@color/white" />
<RadioButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@id/somewhat"
android:text="Somewhat"
android:textSize="25dp"
android:layout_below="@+id/fivePercent"
android:layout_marginTop="35dp"
android:textColor="@color/white"
android:buttonTint="@color/white"/>
<RadioButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/tenPercent"
android:text="No"
android:textSize="25dp"
android:layout_below="@+id/fivePercent"
android:layout_marginTop="35dp"
android:textColor="@color/white"
android:buttonTint="@color/white"/>
</RadioGroup>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Are"
android:textSize="33dp"
android:textColor="@color/white"
android:gravity="center"
android:id="@+id/question"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="84dp"
android:fontFamily="sans-serif-light" />
</RelativeLayout>
另一方面,您只能使用
android:layout_alignParentTop="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_alignParentRight="true"
android:layout_alignParentEnd="true"
您用于<View>
WITHIN RelativeLayout