Android实现计算器布局(四种布局方式)之GridLayout网格布局
16lz
2021-01-26
网格布局:GridLayout
其他三种布局:
RelativeLayout相对布局实现计算器界面布局
LinearLayout线性布局实现计算器界面布局
TableLayout表格布局实现计算器界面布局
网格布局实现计算器界面布局非常简单,实现跨行跨列功能主要用到:
layout_columnSpan属性和layout_rowSpan
如:
android:layout_columnSpan=”3”
android:layout_gravity=”fill”
设置为fill能让控件占满所跨的行或列
界面效果:
outline视图
布局源码:
<?xml version="1.0" encoding="utf-8"?><GridLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:columnCount="6" android:orientation="vertical" android:rowCount="9" > <Button android:id="@+id/button1" android:layout_column="0" android:layout_gravity="left" android:layout_row="0" android:text="1" /> <Button android:id="@+id/button4" android:layout_column="0" android:layout_gravity="right|bottom" android:layout_row="1" android:text="4" /> <Button android:id="@+id/button7" android:layout_column="0" android:layout_gravity="left|bottom" android:layout_row="2" android:text="7" /> <Button android:id="@+id/button13" android:layout_column="0" android:layout_columnSpan="2" android:layout_gravity="fill" android:layout_row="3" android:text="0" /> <Button android:id="@+id/button14" android:layout_column="0" android:layout_columnSpan="3" android:layout_gravity="fill" android:layout_row="4" android:text="+" /> <Button android:id="@+id/button2" android:layout_column="1" android:layout_gravity="left|bottom" android:layout_row="0" android:text="2" /> <Button android:id="@+id/button5" android:layout_column="1" android:layout_gravity="left|bottom" android:layout_row="1" android:text="5" /> <Button android:id="@+id/button8" android:layout_column="1" android:layout_gravity="right" android:layout_row="2" android:text="8" /> <Button android:id="@+id/button3" android:layout_column="2" android:layout_gravity="left|bottom" android:layout_row="0" android:text="3" /> <Button android:id="@+id/button6" android:layout_column="2" android:layout_gravity="left" android:layout_row="1" android:text="6" /> <Button android:id="@+id/button9" android:layout_column="2" android:layout_gravity="left" android:layout_row="2" android:text="9" /> <Button android:id="@+id/button17" android:layout_column="2" android:layout_gravity="left" android:layout_row="3" android:text="." /> <Button android:id="@+id/button16" android:layout_column="3" android:layout_columnSpan="2" android:layout_gravity="left" android:layout_row="0" android:text="/" /> <Button android:id="@+id/button10" android:layout_column="3" android:layout_columnSpan="2" android:layout_gravity="left" android:layout_row="1" android:text="*" /> <Button android:id="@+id/button11" android:layout_column="4" android:layout_gravity="left|bottom" android:layout_row="2" android:text="-" /> <Button android:id="@+id/button12" android:layout_column="4" android:layout_gravity="fill" android:layout_row="3" android:layout_rowSpan="2" android:text="=" /> <Space android:layout_width="1dp" android:layout_height="32dp" android:layout_column="0" android:layout_row="2" /> <Space android:layout_width="63dp" android:layout_height="15dp" android:layout_column="5" android:layout_row="2" /> <Space android:layout_width="100dp" android:layout_height="220dp" android:layout_row="7" /> <TextView android:id="@+id/textView1" android:layout_column="0" android:layout_columnSpan="5" android:layout_gravity="fill" android:layout_row="6" android:text="0" android:textAppearance="?android:attr/textAppearanceLarge" />GridLayout>
更多相关文章
- 完美解决Android中AVD模拟器启动慢(卡在Android启动界面)等问题
- Android5.X之百分比布局库(percent-support-lib) 解析与扩展
- Android:控件布局(表格布局)TableLayout
- [转]android学习总结----Activity view
- LinearLayout源码分析
- 【Android(安卓)界面效果18】Android软件开发之常用系统控件界面
- android之AdapterView及其子类的学习
- Android(安卓)RecyclerView刷新和加载
- android 更新界面视图 Handler和runOnUiThread