Warning: Undefined array key "custom_message" in /www/wwwroot/bbs.aaronyang.cc/wp-content/plugins/wpcopyrights/index.php on line 105

上手编写-柿饼UI“环境检测仪”代码

前言

首先,感谢RTT的这次体验机会,此代码参考了Factory_Demo

先上模拟器效果图:

上手编写-柿饼UI“环境检测仪”代码
上手编写-柿饼UI“环境检测仪”代码
上手编写-柿饼UI“环境检测仪”代码
上手编写-柿饼UI“环境检测仪”代码
上手编写-柿饼UI“环境检测仪”代码
上手编写-柿饼UI“环境检测仪”代码

由于UP上班原因,所以只能下班后不偷懒情况下弄,专心搞还是花不了太多时间的~

设计进度:
第一周:熟悉语法,产品框架
第二周:设计UI界面
第三周:设计界面
第四周:测试验证

第一周:熟悉语法,产品框架

这里推荐先撸RTT小破站的视频进行熟悉,官网有很多资料还未来得及更新,也是踩了两次坑。
https://space.bilibili.com/423462075/channel/detail?cid=74036

上手编写-柿饼UI“环境检测仪”代码

然后就是根据教程安装相关软件啦
必须统一使用 SDK 的开发工具(特别是 设计器,必须使用SDK里面的 ),SDK有全套的开发工具,不需要再额外下载。
SDK链接:https://realthread.cowtransfer.com/s/9248651f54b94c
反馈链接:https://www.wenjuan.com/s/UZBZJvNuqY/
社区论坛链接:https://club.rt-thread.org/

起初想通过调用阿里云天气接口,将空气数据也接入进来但是考虑实现,最终还是使用了彩云科技开放平台 API,由于前期未开放空气接口,先基于天气接口进行开发。
结构设计:(草图)

上手编写-柿饼UI“环境检测仪”代码
上手编写-柿饼UI“环境检测仪”代码
上手编写-柿饼UI“环境检测仪”代码

好了,下面通过PS实现框图绘制

第二周:设计UI界面

上手编写-柿饼UI“环境检测仪”代码
上手编写-柿饼UI“环境检测仪”代码
上手编写-柿饼UI“环境检测仪”代码

通过自动化脚本生成单独的素材

上手编写-柿饼UI“环境检测仪”代码

使用Python脚本进行图片清洗及整理

上手编写-柿饼UI“环境检测仪”代码

第三周:设计界面,代码实现

1、界面设计,图片导入,完成基础按钮功能

上手编写-柿饼UI“环境检测仪”代码

2、完成button跳转,listctrl,这里第二个button还没写,所以有个小bug,请忽略><

上手编写-柿饼UI“环境检测仪”代码

3、完成开机默认展示,时间更新

上手编写-柿饼UI“环境检测仪”代码

4、现在是不是完美很多了?

上手编写-柿饼UI“环境检测仪”代码
上手编写-柿饼UI“环境检测仪”代码
上手编写-柿饼UI“环境检测仪”代码
上手编写-柿饼UI“环境检测仪”代码

5、接下来是我认为最难的一个功能,历史检测的波形图绘制。
由于是第一次接触canvas,所以也是算了半天,首先从左上角开始为原点(0,0),然后根据自己画布的界面依次往下推导。

上手编写-柿饼UI“环境检测仪”代码

6、终于画完了T_T

上手编写-柿饼UI“环境检测仪”代码

Y坐标代表温度,X坐标代表0\~24小时的温度情况,这里由于开发时间受限,所以做了基础的代码,给出来的数据是通过随机数画的,并没有将实际的温度进行存储,所以导致温度幅度比较大,在实际情况下,应该会感冒吧哈哈~

第四周:测试验证

下载到板子里看看。

开机上电:

上手编写-柿饼UI“环境检测仪”代码

2、连接WIFI

上手编写-柿饼UI“环境检测仪”代码

连接成功

上手编写-柿饼UI“环境检测仪”代码

3、返回首页看看,天气已经出来了。语音也是可以播报的,点一下。
左侧的时间没有做成实时的,图快,新加了一个Label。

上手编写-柿饼UI“环境检测仪”代码

4、历史检测

上手编写-柿饼UI“环境检测仪”代码

5、设置页面

上手编写-柿饼UI“环境检测仪”代码
上手编写-柿饼UI“环境检测仪”代码
上手编写-柿饼UI“环境检测仪”代码

演示视频1:

演示视频2:

演示视频3:

(2)
AaronYang的头像AaronYang会员认证作者
上一篇 2024年 3月 11日 下午6:42
下一篇 2021年 6月 2日 下午4:18

相关推荐

  • reboot

    文章目录reboot补充说明语法选项实例 reboot 重新启动正在运行的Linux操作系统 补充说明 reboot命令 用来重新启动正在运行的Linux操作系统。 语法 rebo…

    入门教程 2024年 3月 1日
  • 缓冲信道和工作池(Buffered Channels and Worker Pools)

    文章目录缓冲信道和工作池(Buffered Channels and Worker Pools)什么是缓冲信道?示例一示例二死锁长度 vs 容量WaitGroup工作池的实现 缓冲…

    2023年 12月 5日
  • rcconf

    文章目录rcconf补充说明语法选项 rcconf Debian Linux下的运行等级服务配置工具 补充说明 rcconf命令 是Debian Linux下的运行等级服务配置工具…

    入门教程 2024年 3月 1日
  • TCP/IP 介绍

    TCP/IP 是用于因特网 (Internet) 的通信协议。 文章目录计算机通信协议(Computer Communication Protocol)什么是 TCP/IP?在 T…

    2023年 5月 15日
  • e2label

    文章目录e2label补充说明语法参数实例 e2label 设置第二扩展文件系统的卷标 补充说明 e2label命令 用来设置第二扩展文件系统的卷标。 语法 e2label(参数)…

    入门教程 2023年 12月 14日
  • grpconv

    文章目录grpconv补充说明语法实例 grpconv 用来开启群组的投影密码 补充说明 grpconv命令 用来开启群组的投影密码。Linux系统里的用户和群组密码,分别存放在/…

    入门教程 2023年 12月 14日
  • Java 封装

    在面向对象程式设计方法中,封装(英语:Encapsulation)是指一种将抽象性函式接口的实现细节部分包装、隐藏起来的方法。 封装可以被认为是一个保护屏障,防止该类的代码和数据被…

    入门教程 2023年 3月 9日
  • lscpu

    文章目录lscpu补充说明语法选项参数例子 lscpu 显示有关CPU架构的信息 补充说明 lscpu命令 是显示有关CPU架构的信息。 语法 lscpu [选项] 选项 -a, …

    入门教程 2023年 12月 19日
  • restore

    文章目录restore补充说明语法选项实例 restore 所进行的操作和dump指令相反 补充说明 restore命令 是dump命令的逆过程,用于还原dump命令生成的备份文件…

    入门教程 2024年 3月 4日
  • quotaoff

    文章目录quotaoff补充说明语法选项参数 quotaoff 关闭Linux内核中指定文件系统的磁盘配额功能 补充说明 quotaoff命令 用于关闭Linux内核中指定文件系统…

    入门教程 2024年 3月 1日

发表回复

登录后才能评论
Translate »