android只有界面组件,Android 复杂界面开发实践之 ViewController: 介绍

ViewController 是一种界面开发组件化的实现方式,利用它可以将一些复杂的 UI 界面开发组件化, 从而更好的组织代码结构,从而提高开发效率,降低维护成本。

不同于 Fragment ,ViewController 更加小巧、灵活、易控制,代码也超级简单,目前只有一个不到 100 行的类。

目前项目已经开源,项目地址:ViewController

介绍

关于 ViewControler 这种思想的介绍,也可以查看上一篇文章,Android 复杂界面开发实践之 ViewController: 前言

在日常开发中,当我们看到如下的 UI 原型时,在实际编码实现过程中,通常我们会把所有的布局先用 xml 实现,然后在 Activity 中编写所有的 UI 操作逻辑。

e70c1478cd9e

这里,稍微思考下,这种方式的开发会有什么弊端。

所有的 UI 元素都需要定义在同一个类中,所有的 UI 逻辑操作也都发生在同一个类里,在加上一些业务逻辑,这个界面的代码会在不断迭代的过程中越来越难保持 clean .

但是使用 ViewController 这种思想后,你可以把页面逻辑按 UI 块做拆分,进行组件化开发,最后在 Activity 中只需要把组件进行组合即可。

下面是一张 ViewController 示意图,如下所示。

e70c1478cd9e

如上图所示,现在把界面拆分为了四个 ViewController,每个ViewController 管理自己的一组View 集合,这样就巧妙的把原本需要写在 Activity 代码分发到了不同的 ViewController 中去。

至于代码如何分发,可以查看项目主页 Readme,或者直接看源码。

使用

具体如何使用,请移步项目主页,那里有详细的介绍,因为代码很简短,如果有兴趣,建议直接看源码。

适合 ViewController 的情形

首先,不是所有的界面都适合用此种方式去开发,一些界面从设计之初就是浑然一体的,咱们没法做拆分,就没法使用,当然也没必要使用。

但是比如示例中的房屋详情设计,就特别适合使用 ViewController,因为他可以很容易的让我们去划分程序概念上的块。

如上所述,在合适的地方使用 ViewController,优点就显而易见。

优点

界面开发组件化,解决 Activity/Fragment 中 UI 代码臃肿问题。

灵活的 UI 开发,同一组件可在多处复用,从而做到代码重用。

易维护,开发简单。

作者

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值