public class MyActivity extends AppCompatActivity { private MyViewModel myViewModel; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); myViewModel = new ViewModelProvider(this).get(MyViewModel.class); myViewModel.getData().observe(this, new Observer<String>() { @Override public void onChanged(String data) { } }); } } public class MyViewModel extends ViewModel { private MutableLiveData<String> data = new MutableLiveData<>(); public LiveData<String> getData() { return data; } public void updateData(String newData) { data.setValue(newData); } } public class MyActivity extends AppCompatActivity { private MyViewModel myViewModel; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); myViewModel = new ViewModelProvider(this).get(MyViewModel.class); myViewModel.getData().observe(this, new Observer<String>() { @Override public void onChanged(String data) { } }); if (savedInstanceState == null) { myViewModel.initData(); } } @Override protected void onSaveInstanceState(Bundle outState) { super.onSaveInstanceState(outState); myViewModel.saveData(outState); } @Override protected void onRestoreInstanceState(Bundle savedInstanceState) { super.onRestoreInstanceState(savedInstanceState); myViewModel.restoreData(savedInstanceState); } }


上一篇:
下一篇:
切换中文