zoukankan      html  css  js  c++  java
  • 被relativeLayout的grivate center 折腾死了

    <?xml version="1.0" encoding="utf-8"?>
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/online_error_layout"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:background="#ffffff"
        android:orientation="vertical" >
    
        <ImageView
            android:id="@+id/imageView1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentTop="true"
            android:layout_centerHorizontal="true"
            android:layout_marginTop="120dp"
            android:focusableInTouchMode="false"
            android:src="@drawable/wifi_open" />
    
    
    
        <TextView
            android:id="@+id/tv_nonet"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_centerHorizontal="true"
            android:layout_below="@+id/imageView1"
            android:layout_marginTop="2dp"
            android:text="@string/online_error_tip"
            android:textColor="@color/zz_black_60_percent_transparent"
            android:textSize="13sp" />
    
    
        <Button
            android:id="@+id/online_error_btn_retry"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_below="@id/tv_nonet"
            android:layout_marginTop="40dp"
            android:layout_marginBottom="14dp"
            android:layout_marginLeft="15dp"
            android:layout_marginRight="15dp"
            android:text="@string/online_error_retry"
            android:textSize="15sp" />
    </RelativeLayout>

    一开始的时候布局是:

    <?xml version="1.0" encoding="utf-8"?>
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/online_error_layout"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:background="#ffffff"
        android:gravity="center"
        android:orientation="vertical" >
    
        <ImageView
            android:id="@+id/imageView1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentTop="true"
            android:layout_centerHorizontal="true"
            android:layout_marginTop="120dp"
            android:focusableInTouchMode="false"
            android:src="@drawable/wifi_open" />
    
        <Button
            android:id="@+id/online_error_btn_retry"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_alignParentBottom="true"
            android:layout_marginBottom="14dp"
            android:layout_marginLeft="15dp"
            android:layout_marginRight="15dp"
            android:text="@string/online_error_retry"
            android:textSize="15sp" />
    
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_centerHorizontal="true"
            android:layout_below="@+id/imageView1"
            android:layout_marginTop="2dp"
            android:text="@string/online_error_tip"
            android:textColor="@color/zz_black_60_percent_transparent"
            android:textSize="13sp" />
    
    </RelativeLayout>

    没想到relativeLayout的grivate :center会影响到
    我把bottom的那个东西删除之后的布局。就是整个布局都会居中,而不是全屏的显示了。

    如果有空间贴着父控件的底部,

     android:layout_alignParentBottom="true"

    ,那么grivate =center不会有太大的作用,因为整个布局已经被占用完了,而如果你没有这个控件,你还写了grivate =center,那么控件的

    android:layout_alignParentTop="true"
            android:layout_centerHorizontal="true"
            android:layout_marginTop="120dp"

    控件的marginTop就会在布局的中间算margin,而不是顶部。

    有grivate=center的布局效果:
    有grivate=center的布局效果:

    没有grivate=center的布局效果:
    这里写图片描述

  • 相关阅读:
    原生态Vim使用快捷键
    Django 搭建博客记(二)
    Django搭建博客记(一)
    草稿
    骨骼动画的实现(OpenGL实现)
    场景内容的再现
    实现Ogre的脚本分离
    Bullet物理引擎在OpenGL中的应用
    linux fork进程请谨慎多个进程/线程共享一个 socket连接,会出现多个进程响应串联的情况。
    多开发机别名跳转脚本片段
  • 原文地址:https://www.cnblogs.com/caoxinyu/p/10568741.html
Copyright © 2011-2022 走看看