Android 使用TableLayout动态绘制表格

您所在的位置:网站首页 xml制作表格 Android 使用TableLayout动态绘制表格

Android 使用TableLayout动态绘制表格

2024-07-11 19:15| 来源: 网络整理| 查看: 265

第一步:在layout文件中添加TableLayout

在layout文件中添加TableLayout组件,其中添加两行TableRow,绘制表格标题和表格列的名称。

在需要分格的TableRow中添加LinearLayout, , 再在LinearLayout中添加TextView, 便于使用weight属性调整每一格的宽度。

其中android:stretchColumns="*"属性使每一行内的控件自动拉伸填充表格行。

由于TableLayout没有设置边框颜色的属性, 于是使用android:background="@color/black"将背景设置为想要设置的边框颜色, 然后在TableRow中添加背景填充, 使得TableLayout的背景颜色以margin的形式显示出来, 形成表格边框的样式。

绘制完成后, 是这个样子

第二步: 创建表格数据对应的类

新建一个类, 用于保存即将填入表格中的每一条数据的信息。

public class DataItem { private String address, LL, distance; public DataItem(String address, String LL, String distance) { this.address = address; this.LL = LL; this.distance = distance; } public String getAddress() { return address; } public void setAddress(String address) { this.address = address; } public String getLL() { return LL; } public void setLL(String LL) { this.LL = LL; } public String getDistance() { return distance; } public void setDistance(String distance) { this.distance = distance; } } 第三步: 在Activity文件中动态添加表格行 在OnCreate()中添加数据 // 声明变量 TableLayout tableLayout; private List dataItems; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // 添加要显示的数据 dataItems.add(new DataItem("翻斗大街翻斗花园2号楼1001室", "(64, 52)", "97")); dataItems.add(new DataItem("地址", "(25, 46)", "79")); dataItems.add(new DataItem("地址", "(25, 46)", "79")); dataItems.add(new DataItem("地址", "(25, 46)", "79")); dataItems.add(new DataItem("地址", "(25, 46)", "79")); //绘制表格 initTable(); } 绘制表格 private void initTable() { tableLayout = findViewById(R.id.tableLayout); int padding = dip2px(getApplicationContext(), 5); // 遍历dataItems, 每一条数据都加进TableLayout中 for(int i = 0; i


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3