当前位置: 首页 > wzjs >正文

南阳做网站多少费用wordpress 添加登录界面

南阳做网站多少费用,wordpress 添加登录界面,wordpress首页显示友链,中国科技网官网文章目录 一、什么是 LVGL 的网格布局(Grid)?二、使用 Grid 布局的步骤✅ 1. 设置容器为 Grid 布局✅ 2. 定义网格行列模板常用单位:示例: ✅ 3. 应用模板到容器✅ 4. 设置子控件在网格中的位置和跨度 三、完整示例&am…

文章目录

    • 一、什么是 LVGL 的网格布局(Grid)?
    • 二、使用 Grid 布局的步骤
      • ✅ 1. 设置容器为 Grid 布局
      • ✅ 2. 定义网格行列模板
        • 常用单位:
        • 示例:
      • ✅ 3. 应用模板到容器
      • ✅ 4. 设置子控件在网格中的位置和跨度
    • 三、完整示例:2×2 网格
    • 四、Grid 与 Flex 的对比
    • 五、如何选择?
    • 六、可视化对比图示意(示意)🔍



一、什么是 LVGL 的网格布局(Grid)?

网格布局是一种类似 HTML 中 CSS Grid 的布局方式,它允许你将容器划分为“行 × 列”的结构,然后把子控件放到网格的具体格子中。它更适用于复杂、规则、静态的控件排布,比如表格、键盘、计算器等。


二、使用 Grid 布局的步骤

✅ 1. 设置容器为 Grid 布局

lv_obj_set_layout(cont, LV_LAYOUT_GRID);

或者你可以直接使用 lv_obj_set_grid_dsc_array() 来初始化布局(推荐使用)


✅ 2. 定义网格行列模板

你需要提前定义一个“模板”,告诉 LVGL 每行/每列多宽、是否可伸缩。

常用单位:
  • LV_GRID_FR(n):比例单位(像 CSS 的 fr
  • LV_GRID_CONTENT:自动匹配内容大小
  • LV_GRID_TEMPLATE_LAST:标记模板结束
示例:
static lv_coord_t col_dsc[] = {LV_GRID_FR(1), LV_GRID_FR(2), LV_GRID_TEMPLATE_LAST};
static lv_coord_t row_dsc[] = {LV_GRID_CONTENT, LV_GRID_FR(1), LV_GRID_TEMPLATE_LAST};

这表示:

  • 有两列,第一列宽度是 1 比例单位,第二列宽度是 2;
  • 有两行,第一行为内容大小,第二行为 1 比例单位。

✅ 3. 应用模板到容器

lv_obj_set_grid_dsc_array(cont, col_dsc, row_dsc);

✅ 4. 设置子控件在网格中的位置和跨度

lv_obj_set_grid_cell(child, LV_GRID_ALIGN_STRETCH, 0, 2,LV_GRID_ALIGN_CENTER, 1, 1);

参数解释如下:

lv_obj_set_grid_cell(obj, col_align, col_pos, col_span,row_align, row_pos, row_span);
参数说明
col_align水平方向对齐(如:LV_GRID_ALIGN_CENTER
col_pos起始列编号(从 0 开始)
col_span横向跨几列
row_align垂直方向对齐
row_pos起始行编号
row_span纵向跨几行

三、完整示例:2×2 网格

lv_obj_t * cont = lv_obj_create(lv_scr_act());
lv_obj_set_size(cont, 300, 200);
lv_obj_center(cont);static lv_coord_t col_dsc[] = {LV_GRID_FR(1), LV_GRID_FR(1), LV_GRID_TEMPLATE_LAST};
static lv_coord_t row_dsc[] = {LV_GRID_FR(1), LV_GRID_FR(1), LV_GRID_TEMPLATE_LAST};lv_obj_set_grid_dsc_array(cont, col_dsc, row_dsc);// 创建 4 个按钮,放入网格
for (int i = 0; i < 4; i++) {lv_obj_t * btn = lv_btn_create(cont);lv_obj_set_grid_cell(btn, LV_GRID_ALIGN_CENTER, i % 2, 1,LV_GRID_ALIGN_CENTER, i / 2, 1);lv_obj_t * label = lv_label_create(btn);lv_label_set_text_fmt(label, "Btn %d", i + 1);lv_obj_center(label);
}

四、Grid 与 Flex 的对比

特性Grid 网格布局Flex 弹性布局
布局结构明确的行列划分,固定网格格子主轴 + 子控件自动流式排列
控件定位子控件放入指定行列、支持跨行跨列子控件根据顺序自动排列
控件大小可通过比例、内容、固定值精确控制通常由控件自身宽高 + grow 决定
对齐控制每个子控件可以独立设置对齐整体主轴和交叉轴对齐控制为主
响应式程度更适合静态、规则布局(如键盘)更适合动态内容排列、流式排版(如卡片墙)
学习曲线略高,需要理解网格结构和定位较低,上手快

五、如何选择?

需求类型建议使用
表格、键盘、计算器、九宫格类布局✅ Grid
聊天记录、图片流、按钮组✅ Flex
可预知的行列内容✅ Grid
不确定控件数量或大小✅ Flex

六、可视化对比图示意(示意)🔍

Grid 布局                    Flex 布局
┌────┬────┐                ┌────┬────┬────┐
│ A1 │ A2 │                │ A  │ B  │ C  │
├────┼────┤                └────┴────┴────┘
│ B1 │ B2 │                主轴流动排列
└────┴────┘
规则行列结构                控件顺序排列

http://www.dtcms.com/wzjs/785629.html

相关文章:

  • seo优化网站多少钱排名优化网站建设
  • 做承诺的网站网上商城系统模板
  • 网站开发流程需要用到的语言网站推广服务公司
  • wordpress文章标题总有网站名教务管理系统可行性研究报告
  • 网站安全检测软件装修公司展厅效果图设计图片
  • 网站要怎么备案html写手机网站吗
  • 宝塔面板wordpress多站点wordpress上传图片错误媒体库错误
  • 规划院网站建设书公司单页设计
  • 南昌网站建设制作与维护wordpress 主题 积分
  • app源码网站注册网站流程及资料
  • 俄罗斯女孩制作论文网站兰州网络推广服务合同
  • 美食网站开发的难点做兼职比较好的网站有哪些
  • 做影视网站能赚到钱吗代理小程序项目
  • 开网站的宣传图片怎么做外包加工活
  • 做网站 多页面网址怎么弄做网站的分页查询
  • 网站建设刂搜金手指下拉贰肆浙江省邮电工程建设有限公司网站
  • 网站扫码怎么做的传奇游戏排行榜
  • 门户网站建设安全管理制度做品牌网站的
  • 网站建设全包哪家便宜电商首页模板网站
  • 镇江网站建设制作wordpress自适应博客主题
  • 为网站 做字幕网页升级中每天自动更新什么意思
  • 网站建设的步骤教程下载互联网广告代理加盟
  • 资海网络一年做多少网站深圳保障房申请条件2022
  • 中德合作项目seo网络推广技巧
  • 网站备案弊端阿里云部署wordpress
  • 鸿基建设工程有限公司网站免费商城
  • tomcat 建网站怎么样做网站优化
  • 推广赚钱的软件排行苏州优化亚当
  • 免费建设网站和域名四川攀枝花网站建设
  • 做pc端网站基本流程wordpress po文件