`
king_tt
  • 浏览: 2114975 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Android中的RelativeLayout中组件的排放问题

 
阅读更多

今天想仿照新浪微博的用户中心


主要就是那个头像的问题,这个看到就想到用相对布局,现在是我想把那个名称放到头像的上面去xml中定义如下:

<RelativeLayout
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_alignBottom="@+id/user_info_head_wallpager">
            <ImageView
                android:id="@+id/user_info_head_avatar"
                android:layout_width="74dip"
                android:layout_height="74dip"
                android:background="@drawable/avatar_background" />
            <TextView
                android:id="@+id/user_info_head_name"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_above="@+id/user_info_head_avatar"
                android:text="dskhdks"
                android:textColor="#FFFFFF"
                android:textSize="19sp"
                android:textStyle="bold"
                android:background="#ff567890" />
 </RelativeLayout>

这样看一点问题都没有,但是看一下效果图,那个TextView就是不显示,使用了各种办法找错误,都没有效果,最后查了好多资料才找到原因,就是RelativeLayout中添加组件额顺序要和显示的顺序一样,所以把ImageView和TextView两个换了个位置,在ImageView中使用layout_below属性然后就没有问题了

而且在这个过程中还发现一个问题就是Android中的一个特性:XML布局文件中id的获取是从上往下获取的,所以如果你在一个组件之前使用到他的id,这时会出现意想不到的错误.

最后附上RelativeLayout中关于位置的设置属性详解:

android:layout_below 在某元素的下方
android:layout_above 在某元素的的上方
android:layout_toLeftOf 在某元素的左边
android:layout_toRightOf 在某元素的右边
android:layout_alignTop 本元素的上边缘和某元素的的上边缘对齐
android:layout_alignLeft 本元素的左边缘和某元素的的左边缘对齐
android:layout_alignBottom 本元素的下边缘和某元素的的下边缘对齐
android:layout_alignRight 本元素的右边缘和某元素的的右边缘对齐

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics