2015-04-21 126 views
0
<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:paddingLeft="@dimen/activity_horizontal_margin" 
android:paddingRight="@dimen/activity_horizontal_margin" 
android:paddingTop="@dimen/activity_vertical_margin" 
android:paddingBottom="@dimen/activity_vertical_margin" 
tools:context="roteiro.pap.pedro.roteiro.Filtros" 
android:background="@drawable/fundo_ceu" 
android:id="@+id/fundo"> 

<Button 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="Dormir" 
    android:id="@+id/btnDormir" 
    android:layout_centerVertical="true" 
    android:onClick="btnDormironClick" 
    android:layout_alignLeft="@+id/btnNatureza" 
    android:layout_alignStart="@+id/btnNatureza" 
    android:layout_alignRight="@+id/btnNatureza" /> 

<Button 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="Info" 
    android:id="@+id/btnInfo" 
    android:onClick="btnInfoonClick" 
    android:layout_above="@+id/btnDormir" 
    android:layout_alignRight="@+id/btnNatureza" 
    android:layout_alignLeft="@+id/btnNatureza" 
    android:layout_alignStart="@+id/btnNatureza" /> 

<Button 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="Comer" 
    android:id="@+id/btnComer" 
    android:onClick="btnComeronClick" 
    android:layout_below="@+id/btnDormir" 
    android:layout_alignRight="@+id/btnDormir" 
    android:layout_alignEnd="@+id/btnDormir" 
    android:layout_alignLeft="@+id/btnNatureza" 
    android:layout_alignStart="@+id/btnNatureza" /> 

<Button 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="Bares" 
    android:id="@+id/btnBar" 
    android:onClick="btnBaronClick" 
    android:layout_below="@+id/btnComer" 
    android:layout_alignRight="@+id/btnComer" 
    android:layout_alignEnd="@+id/btnComer" 
    android:layout_alignLeft="@+id/btnNatureza" 
    android:layout_alignStart="@+id/btnNatureza" /> 

<ImageView 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:id="@+id/imageView2" 
    android:layout_toEndOf="@+id/imageView11" 
    android:src="@drawable/monumentos" 
    android:layout_toRightOf="@+id/imageView11" /> 

<ImageView 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:id="@+id/imageView3" 
    android:layout_alignBottom="@+id/btnInfo" 
    android:layout_toRightOf="@+id/btnInfo" 
    android:layout_toEndOf="@+id/btnInfo" 
    android:src="@drawable/info" /> 

<ImageView 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:id="@+id/imageView4" 
    android:layout_above="@+id/btnComer" 
    android:layout_toRightOf="@+id/btnDormir" 
    android:layout_toEndOf="@+id/btnDormir" 
    android:src="@drawable/dormir" /> 

<Button 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="Compras" 
    android:id="@+id/btnCompras" 
    android:onClick="btnComprasonClick" 
    android:layout_below="@+id/btnBar" 
    android:layout_alignRight="@+id/btnBar" 
    android:layout_alignEnd="@+id/btnBar" 
    android:layout_alignLeft="@+id/btnNatureza" 
    android:layout_alignStart="@+id/btnNatureza" /> 

<ImageView 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:id="@+id/imageView5" 
    android:layout_above="@+id/btnBar" 
    android:layout_toRightOf="@+id/btnComer" 
    android:layout_toEndOf="@id/btnComer" 
    android:src="@drawable/comer" /> 

<ImageView 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:id="@+id/imageView6" 
    android:layout_above="@+id/btnCompras" 
    android:layout_toRightOf="@+id/btnBar" 
    android:layout_toEndOf="@id/btnBar" 
    android:src="@drawable/bar" /> 

<ImageView 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:id="@+id/imageView7" 
    android:layout_alignBottom="@+id/btnCompras" 
    android:layout_toRightOf="@+id/btnCompras" 
    android:layout_toEndOf="@+id/btnBar" 
    android:src="@drawable/compras" /> 

<Button 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="Natureza" 
    android:id="@+id/btnNatureza" 
    android:onClick="btnPassearonClick" 
    android:layout_above="@+id/imageView2" 
    android:layout_marginBottom="10dp" 
    android:layout_toLeftOf="@+id/imageView11" 
    android:layout_toStartOf="@+id/imageView11" /> 

<ImageView 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:id="@+id/imageView11" 
    android:layout_toEndOf="@+id/btnNatureza" 
    android:src="@drawable/passear" 
    android:layout_alignBottom="@+id/btnNatureza" 
    android:layout_toRightOf="@+id/btnNatureza" /> 

圓形佈局的依賴

我已經得到了循環依賴錯誤在我的佈局,我已經試圖找到任何循環依賴,但無法找到它,誰看到了?

java.lang.IllegalStateException:循環依賴不能在RelativeLayout的存在

+0

您可以發佈佈局的圖形表示嗎? – WISHY

回答

1

錯誤在於以下組件

<Button 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="Natureza" 
    android:id="@+id/btnNatureza" 
    android:onClick="btnPassearonClick" 
    android:layout_above="@+id/imageView2" 
    android:layout_marginBottom="10dp" 
    android:layout_toLeftOf="@+id/imageView11" 
    android:layout_toStartOf="@+id/imageView11" /> 

<ImageView 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:id="@+id/imageView11" 
    android:layout_toEndOf="@+id/btnNatureza" 
    android:src="@drawable/passear" 
    android:layout_alignBottom="@+id/btnNatureza" 
    android:layout_toRightOf="@+id/btnNatureza" /> 

您指定btnNatureza必須要的imageView11權,但隨後你告訴imageView11它必須在btnNatureza的左邊。這是一個循環依賴,因爲這兩個視圖都沒有參考的起點,他們依靠彼此來確定它們的位置。爲了解決這個問題,您必須從Buttonandroid:layout_toRightOf="@+id/btnNatureza"中刪除android:layout_toLeftOf="@+id/imageView11"ImageView

+1

就是這樣!謝謝 – peter97silva

0

btnNaturezaimageView2是指imageView11是指btnNatureza

而且一般你不能說A是底部B和B在A以上。只保留一個。

<Button 
    android:id="@+id/btnNatureza" 
    android:layout_above="@+id/imageView2" 
    android:layout_toLeftOf="@+id/imageView11" 
    android:layout_toStartOf="@+id/imageView11" /> 

<ImageView 
    android:id="@+id/imageView11" 
    android:layout_toEndOf="@+id/btnNatureza" 
    android:layout_alignBottom="@+id/btnNatureza" 
    android:layout_toRightOf="@+id/btnNatureza" /> 

<ImageView 
    android:id="@+id/imageView2" 
    android:layout_toEndOf="@+id/imageView11" 
    android:layout_toRightOf="@+id/imageView11" /> 
0

這兩種觀點相互引用

<Button 
android:layout_width="wrap_content" 
android:layout_height="wrap_content" 
android:text="Natureza" 
android:id="@+id/btnNatureza" 
android:onClick="btnPassearonClick" 
android:layout_above="@+id/imageView2" 
android:layout_marginBottom="10dp" 
android:layout_toLeftOf="@+id/imageView11" 
android:layout_toStartOf="@+id/imageView11" /> 

<ImageView 
android:layout_width="wrap_content" 
android:layout_height="wrap_content" 
android:id="@+id/imageView11" 
android:layout_toEndOf="@+id/btnNatureza" 
android:src="@drawable/passear" 
android:layout_alignBottom="@+id/btnNatureza" 
android:layout_toRightOf="@+id/btnNatureza" />