在我的活动课中,我可以使用以下方法注入ViewModel:
@Inject
GameViewModel gameViewModel;
而且效果很好。问题是,我想在接口中使用对象:
public interface SharedData {
@Inject
GameViewModel gameViewModel;
default void createNewUser(User authenticatedUser) {
gameViewModel.userLiveData.observe(this, user -> {
Log.d("TAG", user.name);
});
}
}
这甚至可能吗?因为我得到:
变量gameViewModel可能尚未初始化
匕首不应该那样做吗?
您不能在界面中使用字段。要使用字段,您应该使用一个类或一个抽象类。