android studio-GridLayout网格布局设计简易的计算器界面

android studio-GridLayout网格布局设计简易的计算器界面

      • Android Studio简介
      • Android Studio七大布局
        • GridLayout(网格布局)解析
          • 简述
          • 常用的属性格式解析
    • 运行效果: ![在这里插入图片描述](https://img-blog.csdnimg.cn/20200417213022278.png)

Android Studio简介

Android Studio 是谷歌推出的一个Android集成开发工具,基于IntelliJ IDEA. 类似 Eclipse ADT,Android Studio 提供了集成的 Android 开发工具用于开发和调试。
在IDEA的基础上,Android Studio 增加了:

  • 基于Gradle的构建支持
  • Android 专属的重构和快速修复
  • 提示工具以捕获性能、可用性、版本兼容性等问题
  • 支持ProGuard 和应用签名
  • 基于模板的向导来生成常用的 Android 应用设计和组件
  • 功能强大的布局编辑器,可以让你拖拉 UI 控件并进行效果预览

Android Studio七大布局

在设计的时候,我们可以根据要设计的程序,采用适合的布局,在Android中有七大布局,分别是:

  • LinearLayout(线性布局)
  • RelativeLayout(相对布局)
  • TableLayout(表格布局)
  • FrameLayout(帧布局)
  • AbsoluteLayout(绝对布局)
  • GridLayout(网格布局)
  • ConstraintLayout(约束布局)

目前android最新的默认布局是ConstraintLayout(约束布局)
AbsoluteLayout(绝对布局) 是被吐槽最多的,因为屏幕大小兼容问题

GridLayout(网格布局)解析

其他布局的解析可以看我的博客的其他文章。

简述

GridLayout(网格布局)和TableLayout(表格布局)有类似的地方,通俗来讲可以理解为网格布局是表格布局的升级版,这样容易理解。相对来说网格布局的优点有一下几点:

  1. 可以设置布局中组件的排列方式。
  2. 任意自定义网格布局的行列。
  3. 可以直接设置组件位于某行某列。
  4. 可以设置组件横跨几行或者几列。
常用的属性格式解析
<GridLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/GridLayout1"
    //设置表格id
    android:layout_width="fill_parent"
    //网格布局宽度为填满屏幕
    android:layout_height="wrap_content"
    //网格布局高度为包裹内容
    android:columnCount="4"
    //网格布局设置 4 列
    android:orientation="horizontal"
    //网格布局设置为水平布局
    android:rowCount="6"
    //网格布局设置 6 行
    >
</GridLayout>

设置排列对齐
android:orientation :设置排列方式,默认垂直(vertical竖直)、水平(horizontal)。
android:layout_gravity : 设置对齐方式,left ,right,center,buttom,也可以同时使用俩个,比如:top | left。

设置几行几列
android:rowCount=”5”//设置网格布局有5行。
android:columnCount=”5”//设置网格布局有5列。

设置组件所在的行列(注意:是从0开始计的!)
android:layout_row =”2”//设置组件位于第3行。
android:layout_column = “3” //设置该组件位于第4列。

设置组件横跨几行几列
android:layout_rowSpan=”3”//纵向横跨3行
android:layout_columnSpan=”3”//横向横跨3列

计算器代码示例:

xml version="1.0" encoding="utf-8"?>
<GridLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/GridLayout1"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:columnCount="4"
    android:orientation="horizontal"
    android:rowCount="6">

    <TextView
        android:layout_columnSpan="4"
        android:layout_gravity="fill"
        android:layout_width="0dp"

        android:background="#D1D1D1"
        android:text="0"
        android:textSize="50sp" />

    <Button
        android:layout_columnSpan="2"
        android:layout_gravity="fill"
        android:text="回退" />

    <Button
        android:layout_columnSpan="2"
        android:layout_gravity="fill"
        android:text="清空" />

    <Button
        android:text="+"
        android:layout_gravity="fill" />

    <Button
        android:text="1"
        android:layout_gravity="fill" />

    <Button

        android:text="2"
        android:layout_gravity="fill" />

    <Button

        android:text="3"
        android:layout_gravity="fill" />

    <Button

        android:text="-"
        android:layout_gravity="fill" />

    <Button
        android:text="4"
        android:layout_gravity="fill" />

    <Button
        android:text="5"
        android:layout_gravity="fill" />

    <Button
        android:text="6"
        android:layout_gravity="fill" />

    <Button
        android:text="*"
        android:layout_gravity="fill" />

    <Button
        android:text="7"
        android:layout_gravity="fill" />

    <Button
        android:text="8"
        android:layout_gravity="fill" />

    <Button
        android:text="9"
        android:layout_gravity="fill" />

    <Button
        android:text="/"
        android:layout_gravity="fill" />

    <Button

        android:text="."
        android:layout_gravity="fill" />

    <Button
        android:text="0"
        android:layout_gravity="fill" />

    <Button
        android:text="="
        android:layout_gravity="fill" />


</GridLayout>

运行效果:
android studio-GridLayout网格布局设计简易的计算器界面_第1张图片

我是ots-luo,码字不易,写教程也不易,如果觉得文章不错,可以点赞评论,感谢支持!!


更多文章记得关注我的博客
网站文章对应:点击传送

你可能感兴趣的:(Android)