Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
门心叼龙
android-mvvm-architecture
提交
a7bdc508
A
android-mvvm-architecture
项目概览
门心叼龙
/
android-mvvm-architecture
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
A
android-mvvm-architecture
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
a7bdc508
编写于
2月 22, 2019
作者:
J
Jyoti Dubey
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Remove multiple VM Creation
上级
386ca35a
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
28 addition
and
6 deletion
+28
-6
app/src/main/java/com/mindorks/framework/mvvm/ui/main/MainActivityModule.java
...m/mindorks/framework/mvvm/ui/main/MainActivityModule.java
+2
-6
app/src/main/java/com/mindorks/framework/mvvm/ui/main/MainViewModel.java
...va/com/mindorks/framework/mvvm/ui/main/MainViewModel.java
+26
-0
未找到文件。
app/src/main/java/com/mindorks/framework/mvvm/ui/main/MainActivityModule.java
浏览文件 @
a7bdc508
...
...
@@ -32,12 +32,8 @@ import dagger.Provides;
public
class
MainActivityModule
{
@Provides
ViewModelProvider
.
Factory
mainViewModel
Provider
(
MainViewModel
mainViewModel
)
{
return
new
ViewModelProviderFactory
<>(
mainViewModel
);
ViewModelProvider
.
Factory
mainViewModel
(
DataManager
dataManager
,
SchedulerProvider
schedulerProvider
)
{
return
new
MainViewModel
.
Factory
(
dataManager
,
schedulerProvider
);
}
@Provides
MainViewModel
provideMainViewModel
(
DataManager
dataManager
,
SchedulerProvider
schedulerProvider
)
{
return
new
MainViewModel
(
dataManager
,
schedulerProvider
);
}
}
app/src/main/java/com/mindorks/framework/mvvm/ui/main/MainViewModel.java
浏览文件 @
a7bdc508
...
...
@@ -17,9 +17,12 @@
package
com.mindorks.framework.mvvm.ui.main
;
import
android.arch.lifecycle.MutableLiveData
;
import
android.arch.lifecycle.ViewModel
;
import
android.arch.lifecycle.ViewModelProvider
;
import
android.databinding.ObservableArrayList
;
import
android.databinding.ObservableField
;
import
android.databinding.ObservableList
;
import
android.support.annotation.NonNull
;
import
android.text.TextUtils
;
import
com.mindorks.framework.mvvm.data.DataManager
;
...
...
@@ -147,4 +150,27 @@ public class MainViewModel extends BaseViewModel<MainNavigator> {
public
void
updateAppVersion
(
String
version
)
{
appVersion
.
set
(
version
);
}
public
static
class
Factory
extends
ViewModelProvider
.
NewInstanceFactory
{
private
final
DataManager
dataManager
;
private
final
SchedulerProvider
schedulerProvider
;
public
Factory
(
DataManager
dataManager
,
SchedulerProvider
schedulerProvider
)
{
this
.
dataManager
=
dataManager
;
this
.
schedulerProvider
=
schedulerProvider
;
}
@NonNull
@Override
public
<
T
extends
ViewModel
>
T
create
(
@NonNull
Class
<
T
>
modelClass
)
{
if
(
modelClass
.
isAssignableFrom
(
MainViewModel
.
class
))
{
return
(
T
)
new
MainViewModel
(
dataManager
,
schedulerProvider
);
}
throw
new
IllegalArgumentException
(
"Unknown class name"
);
}
}
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录