zoukankan      html  css  js  c++  java
  • java.lang.IllegalStateException: Circular dependencies cannot exist in RelativeLayout

    <TextView
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:id="@+id/ItemIntr"
        android:layout_toRightOf="@+id/ItemImage"
        android:layout_below="@+id/ItemTitle"
        android:layout_above="@+id/ItemText"
        android:textSize="20sp"/>

    出现错误java.lang.IllegalStateException: Circular dependencies cannot exist in RelativeLayout
    经查找发现,是相对布局不支持这种依赖方式(为了清晰,我仅列出了出错的控件,控件间的关系间文末附上的正确代码)

    于是,将android:layout_above="@+id/ItemText"删掉,程序正确运行

    但是,将 android:layout_below="@+id/ItemTitle"删掉,程序依旧报此错误。

    思考了一下,所谓“依赖循环”:

    声明A的时候:A在B上面

    声明B的时候:B在A下面

    这就造成了所谓循环依赖,计算机无法识别你的布局要求,导致程序出现错误。

    解释程序不报错,循环依赖是没必要的,同时也会使程序变得非常复杂,所以在以后自己开发程序的时候一定要注意这一点。

    下面是正确的代码:

    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_height="fill_parent" android:layout_width="fill_parent">
    <ImageView
        android:layout_alignParentLeft="true" android:layout_width="wrap_content"
        android:layout_height="wrap_content" android:id="@+id/ItemImage"/>
    <TextView
        android:id="@+id/ItemTitle"
        android:layout_toRightOf="@+id/ItemImage"
        android:layout_height="wrap_content"
        android:layout_width="fill_parent"
        android:textSize="20sp"/>
    <TextView
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:id="@+id/ItemIntr"
        android:layout_toRightOf="@+id/ItemImage"
        android:layout_below="@+id/ItemTitle"
        android:textSize="20sp"/>
    <TextView
        android:id="@+id/ItemText"
        android:layout_height="wrap_content"
        android:layout_width="fill_parent"
        android:layout_toRightOf="@+id/ItemImage"
        android:layout_below="@+id/ItemIntr"/>
     </RelativeLayout>
  • 相关阅读:
    Struts2标签库
    ognl表达式
    Struts2拦截器
    Struts2文件上传与下载
    Swoft2.x 小白学习笔记 (四) --- RPC
    Swoft2.x 小白学习笔记 (三) --- Task、协程
    Swoft2.x 小白学习笔记 (二) --- mysql、redis
    Swoft2.x 小白学习笔记 (一) ---控制器
    Tornado WebSocket简单聊天
    用python实现的21点游戏
  • 原文地址:https://www.cnblogs.com/yueyanglou/p/4377806.html
Copyright © 2011-2022 走看看