RelativeLayout依赖居中View设置layout_alignRight失效

源码如下

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:fresco="http://schemas.android.com/apk/res-auto"
    android:layout_width="wrap_content"
    android:layout_height="match_parent">
    <com.facebook.drawee.view.SimpleDraweeView
        android:id="@+id/avatar"
        android:layout_width="@dimen/n1_avatar"
        android:layout_height="@dimen/n1_avatar"
        android:layout_centerHorizontal="true"
        fresco:actualImageScaleType="focusCrop"
        fresco:failureImage="@drawable/sample_user"
        fresco:placeholderImage="@drawable/sample_user"
        fresco:retryImage="@drawable/sample_user"
        fresco:roundAsCircle="true" />
      <ImageView
        android:id="@+id/avatar_source"
        android:layout_width="15.0dip" 
        android:layout_height="15.0dip"
        android:layout_alignBottom="@id/avatar"
        android:layout_alignRight="@id/avatar" />

这里我对第一个View设置了layout_centerHorizontal属性,也就是水平居中,第二个View设置在第一个View的右下方。但是运行后发现,第二个View也居中显示。
然后我把第一个View的android:layout_centerHorizontal属性去掉,第二个View居然就正常显示了,还是第一次遇到。
可以推测,是由于第二个View依赖第一个View,第一个View居中显示,第二个View也继承了居中的属性,只有后续深入源码来验证这个猜想了。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 179,230评论 25 708
  • ¥开启¥ 【iAPP实现进入界面执行逐一显】 〖2017-08-25 15:22:14〗 《//首先开一个线程,因...
    小菜c阅读 7,363评论 0 17
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 15,438评论 4 61
  • Android功能强大,界面华丽,但是众多的布局属性就害苦了开发者,下面这篇文章结合了网上不少资料.第一类:属性值...
    HangChen阅读 5,188评论 0 24
  • 前言 本篇主要介绍Runtime在开发中的一些使用场景,顺便讲解了下MJExtension的底层实现。如果喜欢我的...
    袁峥阅读 55,226评论 98 637

友情链接更多精彩内容