美文网首页
Activity基类详解(2) — 架构概述

Activity基类详解(2) — 架构概述

作者: 奔跑的佩恩 | 来源:发表于2021-04-29 13:24 被阅读0次

    前言

    在之前的时候,我已经对Activity基类存在的问题做了详细解说了,大家有兴趣的话,可参看
    Activity基类详解(1) — 前言
    那么今天就让我们对Activity基类涉及到的类,和各类的功能,做一个整体的了解。

    今天涉及内容有:

    1. Activity基类涉及类
    2. 各类的功能阐述
    3. 我希望达到的效果

    整体架构图


    activity基类架构.png

    一. Activity基类涉及类

    目前我Activity基类功能涉及的类有以下几个:

    • SuperActivity
    • AppActivity
    • SuperFragActivity
    • AppFragActivity

    二. 各类的功能阐述

    2.1 SuperActivity

    SuperActivity继承自AppCompatActivity,封装了Activity基类涉及到的一些基本方法。其子类有两个: AppActivitySuperFragActivity

    2.2 AppActivity

    AppActivity继承自SuperActivity,在SuperActivity基础之上实现了IPreActivity接口,从而具备了mvp模式,即具备了快速接入网络通讯的能力。我们在创建一个不含fragmentActivity时,通常继承此Activity

    2.3 SuperFragActivity

    SuperFragActivity继承自SuperActivity,在SuperActivity基础之上增加了Activityframent交互时的一些基本逻辑,以及Activityframent返回键上的处理。此Activity能帮助我们快速实现Activity加载frament的功能。其子类为AppFragActivity

    2.4 AppFragActivity

    AppFragActivity继承自SuperFragActivity, 在SuperActivity基础之上实现了IPreActivity接口,从而具备了mvp模式,即具备了快速接入网络通讯的能力。我们在创建一个含t有fragmentActivity时,通常继承此Activity

    整体结构如下:


    activity基类架构.png

    三. 我希望达到的效果

    由上面我们不难看出,真正要统筹各种场景下的Activity基类的时候,我们需要用到两个Activity: AppActivityAppFragActivity。它们都能实现有网络加载和无网络加载情况下Activity的快速构建,不同的是一个具备快速加载fragment的能力,而另一个没有。这里我们能明显发现一个问题,那就是AppActivityAppFragActivity在功能上存在重复,那就是快速加载mvp模式。因此,我希望做到的是AppActivityAppFragActivity能合二为一,然后就是说明文档的整理。那么下节我将对Activity基类进行一个这样的优化,并对其使用做一个详细介绍。

    ok,今天的内容就介绍到这里了,谢谢大家。

    下篇 Activity基类详解(3) — AppActivity基础能力

    相关文章

      网友评论

          本文标题:Activity基类详解(2) — 架构概述

          本文链接:https://www.haomeiwen.com/subject/anoirltx.html