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>

运行效果:

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


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

更多相关文章

  1. Android实现EventBus登录界面与传值(粘性事件)
  2. fragment嵌套使用时getFragmentManager.findFragment()为空的问
  3. android 标题栏布局
  4. Android软键盘弹出将布局底部控件顶上去的问题
  5. android -- TextView 部分字符带颜色 与 popupwindow 的使用
  6. Android横向ListView
  7. ScrollView can host only one direct child。
  8. android Fragment实现
  9. Android: NullPointerException when using RelativeLayout with

随机推荐

  1. android 简历 android 3年 上海.doc
  2. 从Android中Activity之间的通信说开来
  3. 几行代码看程序员的水平——Android文件
  4. android ListView 几个重要属性
  5. Android(安卓)高手进阶教程(十四)之----A
  6. Android的Task和Activity相关
  7. 重新审视 Android
  8. 笔记 TextView类:
  9. android 自动登录功能的实现
  10. Android(安卓)apk签名