Skip to content

Commit 54a7d1a

Browse files
author
Daniel Novak
committed
Add setModelView() method
1 parent 65396a0 commit 54a7d1a

File tree

5 files changed

+24
-8
lines changed

5 files changed

+24
-8
lines changed

library/src/main/java/eu/inloop/viewmodel/ViewModelHelper.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ public void onCreate(@Nullable Bundle savedInstanceState,
6262
* or {@link android.app.Activity#onCreate(android.os.Bundle)}
6363
* @param view
6464
*/
65-
public void initWithView(@NonNull T view) {
65+
public void setView(@NonNull T view) {
6666
if (mViewModel == null) {
6767
//no viewmodel for this fragment
6868
return;

library/src/main/java/eu/inloop/viewmodel/base/ViewModelBaseActivity.java

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package eu.inloop.viewmodel.base;
22

33
import android.os.Bundle;
4+
import android.support.annotation.NonNull;
45
import android.support.v7.app.AppCompatActivity;
56

67
import eu.inloop.viewmodel.AbstractViewModel;
@@ -15,8 +16,14 @@ public abstract class ViewModelBaseActivity<T extends IView, R extends AbstractV
1516
protected void onCreate(Bundle savedInstanceState) {
1617
super.onCreate(savedInstanceState);
1718
mViewModeHelper.onCreate(savedInstanceState, getViewModelClass(), getIntent().getExtras());
18-
//noinspection unchecked
19-
mViewModeHelper.initWithView((T) this);
19+
}
20+
21+
/**
22+
* Call this after your view is ready - usually on the end of {@link android.app.Activity#onCreate(Bundle)}
23+
* @param view
24+
*/
25+
public void setModelView(@NonNull T view) {
26+
mViewModeHelper.setView(view);
2027
}
2128

2229
public abstract Class<R> getViewModelClass();

library/src/main/java/eu/inloop/viewmodel/base/ViewModelBaseFragment.java

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package eu.inloop.viewmodel.base;
22

33
import android.os.Bundle;
4+
import android.support.annotation.NonNull;
45
import android.support.annotation.Nullable;
56
import android.support.v4.app.Fragment;
67
import android.view.View;
@@ -21,11 +22,12 @@ public void onCreate(Bundle savedInstanceState) {
2122

2223
public abstract Class<R> getViewModelClass();
2324

24-
@Override
25-
public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
26-
super.onViewCreated(view, savedInstanceState);
27-
//noinspection unchecked
28-
mViewModeHelper.initWithView((T) this);
25+
/**
26+
* Call this after your view is ready - usually on the end of {@link Fragment#onViewCreated(View, Bundle)}
27+
* @param view
28+
*/
29+
protected void setModelView(@NonNull T view) {
30+
mViewModeHelper.setView(view);
2931
}
3032

3133
@Override

sample/src/main/java/eu/inloop/viewmodel/sample/fragment/SampleBundleFragment.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,12 @@ public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container,
2929
return inflater.inflate(R.layout.fragment_empty, container, false);
3030
}
3131

32+
@Override
33+
public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
34+
super.onViewCreated(view, savedInstanceState);
35+
setModelView(this);
36+
}
37+
3238
@Override
3339
public Class<SampleArgumentViewModel> getViewModelClass() {
3440
return SampleArgumentViewModel.class;

sample/src/main/java/eu/inloop/viewmodel/sample/fragment/UserListFragment.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,7 @@ public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
7979
getViewModel().deleteUser(i - mListview.getHeaderViewsCount());
8080
}
8181
});
82+
setModelView(this);
8283
}
8384

8485
@Override

0 commit comments

Comments
 (0)