zoukankan      html  css  js  c++  java
  • 布局的居中问题

    首先区分一下gravity和layout_gravity:

    gravity:内部元素的对齐方式。

    layout_gravity:本元素相对于父布局的对齐方式。

    LinearLayout:

    相对于父布局居中,在父布局的LinearLayout设置:android:gravity="center"。

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:gravity="center" >
    
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/hello_world" />
    
    </LinearLayout>
    View Code

    相对于父布局水平居中,子布局设置: android:layout_gravity="center_horizontal" ,父布局设置:android:orientation="vertical",android:layout_width="match_parent"。

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical" >
    
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center_horizontal"
            android:text="@string/hello_world" />
    
    </LinearLayout>
    View Code

    相对于父布局垂直居中,子布局设置:android:layout_gravity="center_vertical",父布局设置:

    android:orientation="horizontal" ,android:layout_height="match_parent"。

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="horizontal" >
    
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center_vertical"
            android:text="@string/hello_world" />
    
    </LinearLayout>
    View Code

    RelativeLayout:

    相对于父布局居中,在父布局的RelativeLayout设置:android:gravity="center"。

    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:gravity="center" >
    
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/hello_world" />
    
    </RelativeLayout>
    View Code

    相对于父布局居中,在子布局设置: android:layout_centerInParent="true"。

    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        >
    
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/hello_world"
            android:layout_centerInParent="true" />
    
    </RelativeLayout>
    View Code

    相对于父布局水平居中和垂直居中对应于:android:layout_centerHorizontal="true",android:layout_centerVertical="true"。

  • 相关阅读:
    理解SVG坐标系统和变换: transform属性
    在svg文间画图过程中放大缩小图片后,坐标偏移问题
    理解SVG的缩放 偏移的计算公式
    svg 实践之屏幕坐标与svg元素坐标转换
    Winform 程序打包及安装
    使用bootstrap table小记(表格组件)
    MVC实现多级联动
    微信公众号开发之网页中及时获取当前用户Openid及注意事项
    微信公众号开发之网页授权获取用户基本信息
    微信公众号开发之自动消息回复和自定义菜单
  • 原文地址:https://www.cnblogs.com/silenceshining/p/4691804.html
Copyright © 2011-2022 走看看