activiti 里面各个方法理解

Posted 紫檀未灭,我亦未去

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了activiti 里面各个方法理解相关的知识,希望对你有一定的参考价值。

/** Return the intent that started this activity. */
public Intent getIntent() {
return mIntent;
}

public void setIntent(Intent newIntent) {
mIntent = newIntent;
}

/** Return the application that owns this activity. */
public final Application getApplication() {
return mApplication;
}

/** Is this activity embedded inside of another activity? */
public final boolean isChild() {
return mParent != null;
}

/** Return the parent activity if this view is an embedded child. */
public final Activity getParent() {
return mParent;
}

/** Retrieve the window manager for showing custom windows. */
public WindowManager getWindowManager() {
return mWindowManager;
}

public Window getWindow() {
return mWindow;
}

/**
* Return the LoaderManager for this activity, creating it if needed.
*/
public LoaderManager getLoaderManager() {
if (mLoaderManager != null) {
return mLoaderManager;
}
mCheckedForLoaderManager = true;
mLoaderManager = getLoaderManager("(root)", mLoadersStarted, true);
return mLoaderManager;
}

LoaderManager : 首先是查询数据的逻辑放在了UI生成的同个线程中,这个就意味着在查询数据的时候,UI页面生成的工作被阻塞住了。UI一旦被阻塞用户就会被感知出来了,因此就会出现各种无相应页面(Application Not Response),或者activity页面延迟的现象,这对用户体验来说是不可接受的。

 其次是在渲染页面的时候需要固定需要进行一次数据查询,但是这个是很不节省资源的。假如一个Activity从一个停止状态回到前台,那么这个时候尽管数据并没有变化,但是也需要进行一次query操作。在浪费资源的同时也再次增加了页面渲染失败的风险。

还有就是当数据变化的时候如何通知页面进行修改呢?这个时候往往就又要创建一个monitor的角色,来当数据源变化的时候来让页面重新调用requery。

因此在android的越来越提倡用户体验的今天,加载器和加载管理器(Loader,LoaderManager)就出现了。

Loader有什么作用?

1 在单独的线程中读取数据

2 监视数据的更新

而LoaderManager就是加载器的管理器,一个LoaderManager可以管理一个或多个Loader,一个Activity或者Fragment只能有一个LoadManager。LoaderManager管理Loader的初始化,重启和销毁操作。

以上是关于activiti 里面各个方法理解的主要内容,如果未能解决你的问题,请参考以下文章

Android 异步加载神器Loader全解析

LoaderManager与Loader使用理解

Android Loader官方使用说明

在 Activity 中初始化 Loader

自己对golang中各个文件的理解

webpack---url-loader 图片路径问题