首页 > 解决方案 > 片段的 ViewModel

问题描述

我正在尝试创建片段的 ViewModel 并且在 ViewModel 的构造函数中我需要传递 Application 但我不知道如何做到这一点有人可以帮忙。谢谢你。

public class HomeFragment extends Fragment {

    private CodeDetailsViewModel codeDetailsViewModel;

    public View onCreateView(@NonNull LayoutInflater inflater,
                             ViewGroup container, Bundle savedInstanceState) {
        codeDetailsViewModel =
                new ViewModelProvider(this, new ViewModelProvider.AndroidViewModelFactory(/*application*/)).get(CodeDetailsViewModel.class);
        View root = inflater.inflate(R.layout.fragment_home, container, false);

        return root;
    }
}

标签: androidmvvmviewmodel

解决方案


如果CodeDetailsViewModelextendsAndroidViewModel那么构造函数将收到Application. 请参阅: https ://developer.android.com/reference/androidx/lifecycle/AndroidViewModel 。


推荐阅读