程序员安卓资源收集Android技术知识

App欢迎界面的实现逻辑

2016-07-29  本文已影响701人  jas0nHu

现在App通常在第一次打开的时候都会显示“欢迎”界面,通过阅读Google I/O的代码,对该功能的实现原理理解如下

Google I/O 2015 App 欢迎界面调用流程

  1. BaseActivity作为所有Activity的父类,在onCreate的时候通过调用WelcomeActivity.shouldDisplay()来检查WelcomeActivity是否需要显示,如果需要显示则启动一个WelcomeActivity,不需要的话直接跳过。

  2. WelcomeActivity.shouldDisplay()通过调用自己的函数getCurrentFragment()来获取没有显示过的Fragment,如果getCurrentFragment返回值是null则直接返回False

  3. getCurrentFragment通过调用getWelcomeFragment()来获取所有的Welcome页面,然后对每个WelcomeFragment调用其自身的shouldDisplay函数检查是否需要显示,需要则添加到显示列表里面,不需要则跳过。

  4. 每个WelcomeFragment通过调用SettingsUltils.is...Accepted来决定函数shouldDisplay的值

  5. SettingUltils.is...Accepted通过PreferenceManager.getDefaultSharedPreference.getBoolean来获取储存起来的Welcome状态

  6. 在看完某个WelcomeFragment后,WlecomeFragment就通过调用SettingsUltils.mark...Accepted来标识该WelcomeFragment已经被Accepted。这样下次被检查的时候就不会在显示。

简易流程图

BaseActivity-->WelcomeActivity.shouldDisplay?-->WelcomeActivity.getCurrentFragment=?null-->WelcomeActivity.getWelcomeFragment==?null-->WelcomeActivityContent.shouldDisplay?-->SettingsUtils.is...Accepted?

Title:App欢迎界面的实现逻辑
Author:Jason Hu
Created:2016-07-29, 01:31:58
Updated:2016-07-29, 01:37:40
Full URL:http://0xng.com/2016/07/29/App欢迎界面的实现逻辑/ **
License:** "CC BY-NC-SA 4.0" Keep Link & Author if Distribute.

上一篇下一篇

猜你喜欢

热点阅读