zoukankan      html  css  js  c++  java
  • 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 本元素的右边缘和某元素的的右边缘对齐

  • 相关阅读:
    集体编程智慧(发现的一些代码问题)
    jQuery实现图片伦播效果(淡入淡出+左右切换)
    require
    小技巧
    JavaScript--面向对象--猜拳游戏
    简单封装cookie操作
    less
    进程相关

    线程和进程相关
  • 原文地址:https://www.cnblogs.com/roccheung/p/5797452.html
Copyright © 2011-2022 走看看