DuiLib阅读笔记

2018-03-14  本文已影响0人  zeromemcpy

之前读过一次 好多忘记了 mark一下

阅读的时候 尽量去理解其思想,其优秀的设计 和其逻辑实现

地址:https://github.com/duilib/duilib

DuiLib 是windows下一个出色的皮肤库,通过解析xml生成对应的布局,类似于android的xml布局

DuiLib的控件都是自绘的,不是一个窗口的模式,以前的windows mfc开发的控件窗口是可以用vs工具spy++捕获的

可以先看下目录结构

core.png

由所见即所得可知:

UIBase.h 基本UI

UIContainer UI装配器

UIControl UI控件

UIDlgBuilder 对话框构造

UIManager 窗口管理,接管整个app的窗体生命周期

UIMarkup xml解析辅助

UIRender UI渲染,预加载图片,双缓冲绘制图片等

可以看出整个项目的类命名是非常清晰的,都以UI开头,所见即所得,这是非常值得学习的

DuilLib其中提供了五种布局

Layout.png

所见即所得,可以看出分别是子布局,水平布局,Tab布局,Title布局,垂直布局

其中以水平布局 和垂直布局最为常用

先看xml的加载

常规xml通常是这样 Xml.png

xml通常可以分为

<? ?>

注释

<name id="1" />

<name id="2">

​ <key></key>

上一篇下一篇

猜你喜欢

热点阅读