Android清洁架构View Model实现视图的回调。
创始人
2024-10-09 16:35:54
0

在Android中,可以使用ViewModel和LiveData来实现视图的回调。以下是一个示例解决方法:

  1. 首先,创建一个ViewModel类,该类将包含用于回调的LiveData对象。例如,创建一个名为MainViewModel的类:
public class MainViewModel extends ViewModel {
    private MutableLiveData messageLiveData = new MutableLiveData<>();

    public LiveData getMessageLiveData() {
        return messageLiveData;
    }

    public void setMessage(String message) {
        messageLiveData.setValue(message);
    }
}
  1. 在Activity或Fragment中,实例化ViewModel,并观察LiveData以获取回调。例如,在MainActivity中:
public class MainActivity extends AppCompatActivity {
    private MainViewModel mainViewModel;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        mainViewModel = ViewModelProviders.of(this).get(MainViewModel.class);

        mainViewModel.getMessageLiveData().observe(this, new Observer() {
            @Override
            public void onChanged(@Nullable String message) {
                // 在这里更新UI或执行其他操作
                Toast.makeText(MainActivity.this, message, Toast.LENGTH_SHORT).show();
            }
        });
    }
}
  1. 当需要回调时,可以通过ViewModel的实例调用相应的方法来更新LiveData的值。例如,在Activity中调用:
mainViewModel.setMessage("Hello, ViewModel!");

当调用setMessage方法时,LiveData的值将更新,并且观察者将收到通知并执行相应的操作。

这种方式可以帮助实现View Model的回调,使得视图和数据之间的交互更加清晰和可维护。

相关内容

热门资讯

推荐十款!德普之星辅助工具如何... 推荐十款!德普之星辅助工具如何打开,wepoker免费脚本,本来有挂(有挂方略)1)wepoker免...
盘点一款!哈糖大菠萝挂法,hh... 盘点一款!哈糖大菠萝挂法,hhpoker哪个俱乐部靠谱,都是真的有挂(有挂实锤)1、不需要AI权限,...
教程攻略!智星德州插件2024... 教程攻略!智星德州插件2024最新版,hhpoker可以控制牌吗,总是真的是有挂(有挂教程)该软件可...
热点推荐!hhpoker怎么破... 热点推荐!hhpoker怎么破解,hhpoker有没有作弊挂,切实真的有挂(今日头条)1、完成辅助器...
玩家必看秘籍!德州局透视脚本,... 玩家必看秘籍!德州局透视脚本,poker红龙辅助,好像有挂(有挂辅助)1、首先打开辅助器下载最新版本...
新手必备!竞技联盟透视插件,哈... 新手必备!竞技联盟透视插件,哈糖大菠萝助手,本来是真的有挂(有挂技巧)1)有没有挂:进一步探索有辅助...
科技揭秘!wejoker免费脚... 科技揭秘!wejoker免费脚本,wepoker轻量版有透视吗,竟然是真的有挂(有挂方法)1、进入游...
信息共享!德扑圈透视挂,哈糖大... 信息共享!德扑圈透视挂,哈糖大菠萝免费辅助器,竟然真的有挂(有挂细节)1、很好的工具软件,可以解锁游...
最新技巧!wepoker私人局... 最新技巧!wepoker私人局怎么玩,wepoker透视脚本下载,其实是有挂(有挂存在)1、完成we...
新手必备!wepoker有辅助... 新手必备!wepoker有辅助器吗,wpk有作弊吗,一直是有挂(有挂技术)1、每一步都需要思考,不同...