小编DHi*_*nes的帖子

Android MVVM 架构组件:如何从列表片段更新单个数据实体?

我一直在努力学习新的 Android 架构组件。我的应用程序基于此示例:基本示例

我有它的工作,但我被困在如何插入、更新或删除 Room 数据库中的数据。在示例中,它没有提供这些示例。

离开这个例子,我试图弄清楚如何从 ProductListFragment 对每个产品进行更改。在我的应用程序中,我没有使用产品,而是一个定义的区域。因此,例如在列表中,我想要一个按钮,按下时将删除该区域。或者一个可以更新 Zone 属性的按钮,例如 Zone 有一个 active 属性。当按钮点击 CardView 时,它会更新区域的 active 属性。

区域列表片段

public class ZoneListFragment extends android.support.v4.app.Fragment {

    public static final String TAG = "ZoneListViewModel";
    private ZoneAdapter mZoneAdapter;
    private FragmentZoneListBinding mBinding;
    private ZoneListViewModel viewModel;

    @Nullable
    @Override
    public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container,
                             @Nullable Bundle savedInstanceState) {
        mBinding = DataBindingUtil.inflate(inflater, R.layout.fragment_zone_list, container, false);

        mZoneAdapter = new ZoneAdapter(mZoneClickCallback, mZoneDirectionClickCallback);
        mBinding.zonesList.setAdapter(mZoneAdapter);

        return mBinding.getRoot();
    }

    @Override
    public void onActivityCreated(@Nullable Bundle savedInstanceState) {
        super.onActivityCreated(savedInstanceState);
        viewModel …
Run Code Online (Sandbox Code Playgroud)

android android-architecture-components

1
推荐指数
1
解决办法
2286
查看次数