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的回调,使得视图和数据之间的交互更加清晰和可维护。

相关内容

热门资讯

玩家必备科技!途游大作战辅助,... 玩家必备科技!途游大作战辅助,小程序怎么开挂(竟然真的有挂)1、小程序怎么开挂辅助器安装包、小程序怎...
实测交流!川南欢乐碰辅助,we... 实测交流!川南欢乐碰辅助,wepoker辅助器激活码,软件教程(果真有挂);1、很好的川南欢乐碰辅助...
必看攻略!钱塘十水三攻略,皮皮... 必看攻略!钱塘十水三攻略,皮皮辅助软件(竟然存在有挂)1、钱塘十水三攻略破解器简单,钱塘十水三攻略机...
必备攻略!微乐小程序辅助收费,... 必备攻略!微乐小程序辅助收费,pokemmo脚本辅助器,专业教程(有挂详情);必备攻略!微乐小程序辅...
每日必看推荐!辅助软件购买平台... 每日必看推荐!辅助软件购买平台,福建天天开心辅助器是真的吗(真是有挂)1.福建天天开心辅助器是真的吗...
大神推荐!福建天天开心辅助软件... 您好,福建天天开心辅助软件这款游戏可以开挂的,确实是有挂的,需要了解加微【136704302】很多玩...
研究成果!jj斗地主捕鱼辅助,... 研究成果!jj斗地主捕鱼辅助,边锋老友圈怎么开辅助(都是真的是有挂)1.边锋老友圈怎么开辅助 选牌创...
盘点一款!财神十三张脚本辅助,... 盘点一款!财神十三张脚本辅助,pokemmo脚本最新版,第三方教程(有挂方法);1、财神十三张脚本辅...
一分钟揭秘!福建天天开心辅助器... 一分钟揭秘!福建天天开心辅助器是真的吗,天天填大坑辅助器免费下载(好像真的有挂)1、玩家可以在福建天...
盘点十款!开心庄园脚本辅助器,... 盘点十款!开心庄园脚本辅助器,pokermaster辅助器,科技教程(竟然有挂);一、开心庄园脚本辅...