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

时间:2017-03-16 03:51:22

标签: java android xml android-layout

我正在尝试将Admob Banner设置在ExtendedViewPager的底部,但我没有成功。我收到错误Exception raised during rendering: Circular dependencies cannot exist in RelativeLayout 我希望我的智能横幅广告位于XML的底部。

我的XML如下所示

<?xml version="1.0" encoding="utf-8"?>
<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"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:fab="http://schemas.android.com/apk/res-auto"
    tools:context="com.karopass.karoshare.ImageDetails">

    <android.support.v7.widget.Toolbar
        android:id="@+id/toolbar_imageDetails"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="@color/colorPrimary"
        android:theme="@style/AppTheme.AppBarOverlay"
        app:popupTheme="@style/AppTheme.PopupOverlay">
    </android.support.v7.widget.Toolbar>

    <com.example.utils.ExtendedViewPager
        android:id="@+id/view_pager_extended"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_below="@+id/toolbar_imageDetails"
        android:background="@color/image_back"/>

    <com.github.clans.fab.FloatingActionMenu
        android:id="@+id/floating_menu"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        app:menu_colorNormal="@color/fab_menu"
        app:menu_labels_colorNormal="@color/btn_fab_labels_color"
        android:layout_marginRight="10dp"
        android:layout_marginBottom="10dp"
        android:layout_above="@+id/ll_adLayout_image"
        android:layout_alignParentRight="true" >

        <com.github.clans.fab.FloatingActionButton
            android:id="@+id/button_likeDislike"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            app:fab_colorNormal="@color/fab_button"
            android:src="@mipmap/fav"
            fab:fab_size="mini"
            fab:fab_label="Like (10)" />

        <com.github.clans.fab.FloatingActionButton
            android:id="@+id/button_share_image"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            app:fab_colorNormal="@color/fab_button"
            android:src="@mipmap/share_white"
            fab:fab_size="mini"
            fab:fab_label="Share" />

        <com.github.clans.fab.FloatingActionButton
            android:id="@+id/button_copy_text"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            app:fab_colorNormal="@color/fab_button"
            android:src="@mipmap/copy"
            fab:fab_size="mini"
            fab:fab_label="" />


    </com.github.clans.fab.FloatingActionMenu>

    <LinearLayout
        android:layout_alignParentBottom="true"
        android:id="@+id/ll_adLayout_image"
        android:layout_below="@+id/floating_menu"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:orientation="vertical">

    </LinearLayout>

</RelativeLayout>

有人可以检查并帮助我解决问题吗?

2 个答案:

答案 0 :(得分:0)

问题是由于布局参​​数中存在循环引用而引起的。

您正在提供LinearLayout财产android:layout_below="@+id/floating_menu",而FloatingActionButton您正在android:layout_above="@+id/ll_adLayout_image"提供{{1}}发生异常的原因。

答案 1 :(得分:0)

在此定义LinearLayout - ll_adLayout_image低于floating_menu,然后定义floating_menu以上ll_adLayout_image线性布局这是循环依赖关系, 对于解决问题,您需要删除任何一个依赖项,

已解决问题的代码:

<?xml version="1.0" encoding="utf-8"?>
<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"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:fab="http://schemas.android.com/apk/res-auto"
    tools:context="com.karopass.karoshare.ImageDetails">

    <android.support.v7.widget.Toolbar
        android:id="@+id/toolbar_imageDetails"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="@color/colorPrimary"
        android:theme="@style/AppTheme.AppBarOverlay"
        app:popupTheme="@style/AppTheme.PopupOverlay">
    </android.support.v7.widget.Toolbar>

    <com.example.utils.ExtendedViewPager
        android:id="@+id/view_pager_extended"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_below="@+id/toolbar_imageDetails"
        android:background="@color/image_back"/>

    <com.github.clans.fab.FloatingActionMenu
        android:id="@+id/floating_menu"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        app:menu_colorNormal="@color/fab_menu"
        app:menu_labels_colorNormal="@color/btn_fab_labels_color"
        android:layout_marginRight="10dp"
        android:layout_marginBottom="10dp"
        android:layout_above="@+id/ll_adLayout_image"
        android:layout_alignParentRight="true" >

        <com.github.clans.fab.FloatingActionButton
            android:id="@+id/button_likeDislike"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            app:fab_colorNormal="@color/fab_button"
            android:src="@mipmap/fav"
            fab:fab_size="mini"
            fab:fab_label="Like (10)" />

        <com.github.clans.fab.FloatingActionButton
            android:id="@+id/button_share_image"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            app:fab_colorNormal="@color/fab_button"
            android:src="@mipmap/share_white"
            fab:fab_size="mini"
            fab:fab_label="Share" />

        <com.github.clans.fab.FloatingActionButton
            android:id="@+id/button_copy_text"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            app:fab_colorNormal="@color/fab_button"
            android:src="@mipmap/copy"
            fab:fab_size="mini"
            fab:fab_label="" />


    </com.github.clans.fab.FloatingActionMenu>

    <LinearLayout
        android:layout_alignParentBottom="true"
        android:id="@+id/ll_adLayout_image"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:orientation="vertical">

    </LinearLayout>

</RelativeLayout>