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(表格布局)有类似的地方,通俗来讲可以理解为网格布局是表格布局的升级版,这样容易理解。相对来说网格布局的优点有一下几点:
- 可以设置布局中组件的排列方式。
- 任意自定义网格布局的行列。
- 可以直接设置组件位于某行某列。
- 可以设置组件横跨几行或者几列。
常用的属性格式解析
<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,码字不易,写教程也不易,如果觉得文章不错,可以点赞评论,感谢支持!!
更多文章记得关注我的博客
网站文章对应:点击传送
更多相关文章
- Android实现EventBus登录界面与传值(粘性事件)
- fragment嵌套使用时getFragmentManager.findFragment()为空的问
- android 标题栏布局
- Android软键盘弹出将布局底部控件顶上去的问题
- android -- TextView 部分字符带颜色 与 popupwindow 的使用
- Android横向ListView
- ScrollView can host only one direct child。
- android Fragment实现
- Android: NullPointerException when using RelativeLayout with