Android:RelativeLayout中不存在循环依赖关系

时间:2017-04-09 02:16:00

标签: java android xml

现在使用的布局没有。它是一个带有水平滚动视图的相对布局,但是当我创建这个活动时,我完全弄乱了布局顺序,现在它不起作用。我无法弄清楚为什么我得到这个错误,我的XML代码完全混乱,我为混乱道歉。如果有人能解释问题是什么以及我如何解决它,我将不胜感激。

XML CODE:

    <?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/activity_rear_gunner"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:focusable="true"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.example.mr_br.ibcc_bomber_command.rear_gunner">


<HorizontalScrollView
    android:id="@+id/horizontalScrollView1"
    android:focusable="false"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:layout_alignParentTop="true"
    android:fillViewport="true"
>


    <ImageView
        android:id="@+id/scrollView"
        android:layout_width="wrap_content" android:layout_height="match_parent"
        android:layout_alignParentTop="true"
        android:layout_toEndOf="@+id/enemy2"

        android:layout_toRightOf="@+id/enemy2" android:scaleType="centerCrop"
        app:srcCompat="@drawable/nightsky3"/>
</HorizontalScrollView>
<RelativeLayout
    android:id="@+id/item_frame"
    android:layout_width="2000dp"
    android:layout_height="match_parent"
    android:focusable="true"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="com.example.mr_br.ibcc_bomber_command.rear_gunner"
    android:layout_alignParentTop="true" android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true">

    <TextView
        android:id="@+id/textView2"
        android:layout_width="200dp"
        android:layout_height="200dp"
        android:layout_alignParentEnd="true" android:layout_alignParentRight="true"
        android:layout_alignParentTop="true" android:text="TextView"
        android:textSize="36sp"/>
    <TextView
        android:id="@+id/score"
        android:layout_width="220dp"
        android:layout_height="wrap_content" android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true" android:layout_alignParentTop="true"
        android:layout_marginLeft="43dp" android:layout_marginStart="43dp"
        android:layout_marginTop="14dp" android:focusable="false" android:text="Score:"
        android:textColor="@android:color/background_dark"
        android:textColorLink="?attr/colorPrimaryDark"
        android:textSize="46sp"/>
    <TextView
        android:id="@+id/Health"
        android:layout_width="400dp"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/score" android:layout_alignBottom="@+id/score"
        android:layout_toEndOf="@+id/enemy2" android:layout_toRightOf="@+id/enemy2"
        android:text="TextView" android:textColor="@android:color/background_dark"
        android:textColorLink="?attr/colorPrimaryDark"
        android:textSize="46sp"/>
    <Button
        android:id="@+id/btnPilot"
        android:layout_width="250dp"
        android:layout_height="wrap_content"
        android:onClick="pilotBonus"
        android:text="Call Pilot Maneuver (Right)" android:layout_below="@+id/powerUps"
        android:layout_alignLeft="@+id/btnPilotL" android:layout_alignStart="@+id/btnPilotL"/>
    <Button
        android:id="@+id/btnPilotL"
        android:layout_width="250dp"
        android:layout_height="wrap_content"
        android:layout_marginLeft="11dp"
        android:layout_marginStart="11dp" android:onClick="pilotBonus"
        android:text="Call Pilot Maneuver (Left)" android:layout_below="@+id/btnPilot"
        android:layout_alignParentLeft="true" android:layout_alignParentStart="true"/>
    <TextView
        android:id="@+id/ammo"
        android:layout_width="350dp"
        android:layout_height="wrap_content"
        android:focusable="false"
        android:text="Ammunition:"
        android:textColor="@android:color/background_dark"
        android:textColorLink="?attr/colorPrimaryDark"
        android:textSize="46sp"
        android:layout_marginRight="49dp" android:layout_marginEnd="49dp"
        android:layout_alignTop="@+id/powerUps" android:layout_alignParentRight="true"
        android:layout_alignParentEnd="true"/>
    <ImageView
        android:id="@+id/reinforce3"
        android:layout_width="150dp" android:layout_height="150dp"
        android:scaleX="-1" android:visibility="invisible"
        app:srcCompat="@drawable/bomber_neutral_info" android:layout_above="@+id/powerUps"
        android:layout_alignParentLeft="true" android:layout_alignParentStart="true"/>
    <ImageView
        android:id="@+id/reinforce1"
        android:layout_width="150dp" android:layout_height="150dp"
        android:layout_marginTop="20dp" android:scaleX="-1"
        android:visibility="invisible" app:srcCompat="@drawable/bomber_neutral_info"
        android:layout_below="@+id/score" android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"/>
    <ImageView
        android:id="@+id/reinforce2"
        android:layout_width="150dp" android:layout_height="150dp"
        android:scaleX="-1"
        android:visibility="invisible" app:srcCompat="@drawable/bomber_neutral_info"
        android:layout_below="@+id/reinforce1" android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"/>
    <ImageView
        android:id="@+id/enemyblah"
        android:layout_width="150dp" android:layout_height="150dp"
        android:visibility="invisible" app:srcCompat="@drawable/bomber_neutral_info"
        android:layout_marginTop="22dp" android:layout_alignTop="@+id/reinforce1"
        android:layout_toRightOf="@+id/reinforce1" android:layout_toEndOf="@+id/reinforce1"/>
    <ImageView
        android:id="@+id/enemy4"
        android:layout_width="150dp" android:layout_height="150dp"
        android:layout_marginTop="30dp"
        android:visibility="invisible" app:srcCompat="@drawable/bomber_neutral_info"
        android:layout_below="@+id/enemy2" android:layout_toRightOf="@+id/enemy2"
        android:layout_toEndOf="@+id/enemy2" android:layout_marginLeft="26dp"
        android:layout_marginStart="26dp"/>
    <TextView
        android:id="@+id/powerUps"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:focusable="false"
        android:text="Support Calls Avaliable:"
        android:textColor="@android:color/background_dark" android:textColorLink="?attr/colorPrimaryDark"
        android:textSize="40sp"
        android:layout_marginTop="33dp" android:layout_below="@+id/enemy3"
        android:layout_alignLeft="@+id/btnPilot" android:layout_alignStart="@+id/btnPilot"/>
    <Button
        android:id="@+id/btnReinforce"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:onClick="opBonus" android:text="Operator Request Support"
        android:layout_marginTop="15dp" android:layout_below="@+id/ammo"
        android:layout_toRightOf="@+id/enemy2" android:layout_toEndOf="@+id/enemy2"/>
    <Button
        android:id="@+id/ammoR"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:onClick="Ammo" android:text="Ammo Request Support"
        android:layout_alignBaseline="@+id/btnReinforce"
        android:layout_alignBottom="@+id/btnReinforce" android:layout_alignLeft="@+id/enemy2"
        android:layout_alignStart="@+id/enemy2" android:layout_marginLeft="17dp"
        android:layout_marginStart="17dp"/>
    <ImageView
        android:id="@+id/enemy5"
        android:layout_width="150dp" android:layout_height="150dp"
        android:visibility="invisible" app:srcCompat="@drawable/bomber_neutral_info"
        android:layout_above="@+id/ammo" android:layout_alignRight="@+id/ammoR"
        android:layout_alignEnd="@+id/ammoR" android:layout_marginRight="19dp"
        android:layout_marginEnd="19dp"/>
    <ImageView
        android:id="@+id/enemy6"
        android:layout_width="150dp" android:layout_height="150dp"
        android:visibility="invisible" app:srcCompat="@drawable/bomber_neutral_info"
        android:layout_alignTop="@+id/enemy2" android:layout_alignRight="@+id/btnReinforce"
        android:layout_alignEnd="@+id/btnReinforce" android:layout_marginRight="23dp"
        android:layout_marginEnd="23dp"/>
    <ImageView
        android:id="@+id/enemy3"
        android:layout_width="150dp" android:layout_height="150dp"
        android:layout_marginTop="21dp" android:visibility="invisible"
        app:srcCompat="@drawable/bomber_neutral_info"
        android:layout_below="@+id/enemy2" android:layout_toLeftOf="@+id/enemy6"
        android:layout_toStartOf="@+id/enemy6"/>
    <ImageView
        android:id="@+id/enemy2"
        android:layout_width="300dp" android:layout_height="200dp"
        android:layout_marginLeft="13dp" android:layout_marginStart="13dp"
        android:visibility="invisible" app:srcCompat="@drawable/bomber_neutral_info"
        android:layout_alignTop="@+id/enemyblah" android:layout_toRightOf="@+id/btnReinforce"
        android:layout_toEndOf="@+id/btnReinforce"/>
    <TextView
        android:id="@+id/warning"
        android:layout_width="400dp"
        android:layout_height="wrap_content"
        android:text="TextView" android:textColor="@android:color/holo_red_dark"
        android:textColorLink="?attr/colorPrimaryDark"
        android:textSize="46sp" android:layout_above="@+id/reinforce3"
        android:layout_centerHorizontal="true" android:visibility="invisible"/>
</RelativeLayout>

错误:

enter image description here

3 个答案:

答案 0 :(得分:1)

你的外部相对布局的imageview取决于enemy2(在内部相对布局内)。这是问题

答案 1 :(得分:0)

我看到一个关注点,看起来btnPilot依赖于依赖于btnPilot的btnPilotL的位置。这可能是多个循环引用之一。

答案 2 :(得分:0)

我接受了你的建议并开始逐一取出意见,问题在于敌人的观点。出于某种原因,我认为这是敌人2但是当我自动更新XML引用时,另一个活动改变了这一点,我将ID更改为不同的内容并且布局再次起作用。感谢您的建议,我也更好地了解了循环依赖性错误究竟是什么。