没有合适的资源?快使用搜索试试~ 我知道了~
首页TouchGFX学习笔记总结
TouchGFX学习笔记总结
需积分: 49 57 下载量 19 浏览量
更新于2023-05-09
3
收藏 1.63MB PDF 举报
TouchGFX 是一个在 MCU 上的 UI 框架 支持在超低功耗条件下实现高端的图形和流畅的动画设计, 达到类似 Android 的体验效果。 2018 年华为推出基于 TouchGFX 的 GT Watch。 开发工具 TouchGFX Designer, 基于拖放的 GUI 生成器。
资源详情
资源推荐
目录
一、TouchGFX 介绍
...........................................................................................................................
2
二、TouchGFX 工程的结构以及代码生成
.......................................................................................
2
三、TouchGFX 基本控件及交互
.......................................................................................................
2
四、TouchGFX 自定义控件
...............................................................................................................
3
五、TouchGFX 自带 MVP
.................................................................................................................
3
六、 TouchGFX 框架的启动过程与工作原理
.................................................................................
4
七、天气流程
.....................................................................................................................................
5
八、如何区分设备和模拟器
.............................................................................................................
8
九、TouchGFX 设计器中的“文本管理器”
........................................................................................
9
十、在代码开发中使用文本和通配符
...........................................................................................
10
十一、 在代码开发中使用 ClickListener 混合
.............................................................................
13
十二、 在代码开发中使用 CustomContainers
............................................................................
17
十三、 提示和技巧
.........................................................................................................................
23
十四、 使用 CacheableContainer 实现更好的动画效果
............................................................
25
十五、 如何使用并加载二进制字体
.............................................................................................
27
十六、 如何使用画布小控件 CanvasWidgets
.............................................................................
29
十七、 在运行时动态加载位图文件
.............................................................................................
31
十八、 在内存有限的系统上缓存位图 Bitmap
............................................................................
33
十九、 使用部分帧缓冲区降低内存的要求
.................................................................................
35
二十、 如何将资产放入到外部闪存中
.........................................................................................
41
二十一、 如何衡量 TouchGFX 的性能绩效
..................................................................................
43
二十二、 数码时钟 Ditigal Clock
..................................................................................................
43
二十三、 如何添加简单的硬件按钮支持
.....................................................................................
48
二十四、 使用非内存映射的外部闪存(例如 NAND 或 SD 卡)
.............................................
50
一、TouchGFX 介绍
TouchGFX
是一个在
MCU
上的
UI
框架
支持在超低功耗条件下实现高端的图形和流畅的动画设计,达到类似
Android
的体验效果。
2018
年华为推出基于
TouchGFX
的
GT Watch
。
开发工具
TouchGFX Designer
,基于拖放的
GUI
生成器。
二、TouchGFX 工程的结构以及代码生成
三、TouchGFX 基本控件及交互
Screen
TouchGFX 应有多个 Screen 组成。
一个 Screen 包含两个内容:一个 View,涵盖该 Screen 上显示的所有控件;一个 Presenter,涵盖该 Screen 上所
有的业务逻辑。
Screen 覆盖整个显示屏,一次只能向用户显示一个 Screen。
官方建议将 UI 不相关的部分分成不同的 Screen 来实现,基于如下两个原因:第一,TouchGFX 的内存分配方案是:
自动分配最消耗 RAM 的 Screen 所需的 RAM 且只分配这个内存,分配的 RAM 可以在应用程序的所有 Screen 上
重用。第二, 拥有多个 Screen,UI 代码更易于维护。
关于如何将一个 Screen 划分成多个 Screen,并没有确切的规则,建议将在外观上和功能上不相关的 UI 放在不同
的 Screen。
当前活动的 Screen: 由于 TouchGFX 为 Screen 分配内存的方式(仅分配给最大的 View 和最大的 Presenter),一
次只能激活一个 View 和一个 Presenter。不展示的 Screen 不会运行。
如果事件是从后台或者外设接收的,那么可以将这些事件委托给当前活动的 Screen,也即关注点分离,因为某些
事件仅对某些 Screen 有意义。
Screen 屏幕过渡: TouchGFX 具有动画过渡机制,内置两种过渡方式:NoTransition 可提供从一个屏幕到另外一
个屏幕切换过渡;SlideTransition 可提供在新屏幕中以幻灯片的方式水平或垂直滑动。
Widget
Interaction
四、TouchGFX 自定义控件
五、TouchGFX 自带 MVP
标准
MVP
MVP 的全称 Model-View-Presenter,Model 提供数据,View 负责显示,Presenter 负责业务逻辑处理。
在 MVP 中,View 并不直接使用 Model,他们之间的通信通过 Presenter 来进行,所有的交互都发生在 Presenter
内部。
Presenter 将 Model 与 View 分离,可以随意修改 View 而不影响 Model。同时,Presenter 与具体的 View 也是没
有直接的关联,而是通过定义好的接口进行交互,从而使得变更 View 也可以保持 Presenter 不变。
MVP 是 UI 应用中划分职责的一种常用方法。
TouchGFX MVP
Model
Model 类是一个单例,只有一个 Model,始终处于活动状态,可供所有 Presenter 使用。
Model 的两个作用:# 存储 UI 的状态信息。切换 Screen 时,View 和 Presenter 被释放,因此他们不能用于存储
应该在 Screen 切换期间保留的信息。需要使用 Model 来存储。
充当与后端系统的接口,在当前活动 Screen 之间来回传递事件。
Model 类有一个自动设置指向当前活动 Presenter 的指针。当 Model 中发生改变时,通过 ModelListener 接口将
更改通知给当前活动的 Presenter。
View
View
即
Screen
,派生自
TouchGFX View
,包含显示的所有控件。
包含
setupScreen, tearDownScreen
两个生命周期函数,在进入,退出时调用。
包含一个指向关联
Presenter
的指针,有框架自动设置。
Presenter
负责当前活动
Screen
的业务逻辑。
将接收来自
Model
的
“
后端
”
事件或来自
View
的
UI
事件,并决定采取什么操作。比如将
Model
收到的事件传递给
UI
并展示。
六、TouchGFX 框架的启动过程与工作原理
七、天气流程
进入天气流程
剩余51页未读,继续阅读
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功