gradle implementation 'androidx.lifecycle:lifecycle-extensions:2.4.0' gradle implementation 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.4.0' public class CustomLiveData extends LiveData<String> { private static CustomLiveData instance; public static CustomLiveData getInstance() { if (instance == null) { instance = new CustomLiveData(); } return instance; } public void setData(String data) { setValue(data); } } public class CustomViewModel extends ViewModel { private CustomLiveData liveData; public LiveData<String> getLiveData() { if (liveData == null) { liveData = CustomLiveData.getInstance(); } return liveData; } } public class MainActivity extends AppCompatActivity { private CustomViewModel viewModel; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); viewModel = new ViewModelProvider(this).get(CustomViewModel.class); viewModel.getLiveData().observe(this, new Observer<String>() { @Override public void onChanged(String data) { } }); } }


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