【发布时间】:2021-10-09 06:32:35
【问题描述】:
我有 2 个表:book 和 user,现在我需要创建另一个表,但它应该从 book 中获取一些字段,而从 user 中获取一些字段,我可以分开,但是当我去另一个片段从 book 表中获取其他字段时用户名,我将它保存到一个字符串,返回 null
08-04 10:47:27.319 4004-4004/com.example.pars.amanatdari I/bookName: args : Bundle[{status=null, userName=jack, bookName=null}]
08-04 10:47:30.139 4004-4004/com.example.pars.amanatdari I/bookName: args : Bundle[{status=available, userName=null, bookName=نون والقلم}]
我到底应该怎么做?我什至不知道要搜索什么
从片段发送数据:
Bundle args = getArguments();
String username = args.getString("userName");
并获取数据:
Intent intent = getIntent();
Bundle bundle = intent.getExtras();
String bookName = bundle.getString("bookName");
String bookStatus = bundle.getString("status");
String bookUser = bundle.getString("userName");
borrowFragment borrowFragment = new borrowFragment();
Bundle args2 = new Bundle();
args2.putString("bookName", bookName);
args2.putString("status", bookStatus);
args2.putString("userName", bookUser);
Log.i("bookName", "args : " + args2);
borrowFragment.setArguments(args2);
getSupportFragmentManager().beginTransaction().add(R.id.frg_container, borrowFragment, "tag").commit();
【问题讨论】:
-
所以基本上你从书籍片段中获取一些值,然后导航到用户片段,然后导航到第三个片段,你从书籍片段中获取的值是空的吗?首先,我建议您迁移到导航组件并使用安全参数将值从一个片段传输到另一个片段。在这种情况下,就目前而言,您可以简单地在三个类之间使用一个数据类和一个共享的 viewModel。在确认上述问题的同时回复我已要求获得更有效的答案
-
是的,你几乎是对的,但首先我从用户表中获取一些值,然后我去另一个片段选择一本书,当我返回时用户名变为空
-
问题解决了吗?
-
是的,你救了我 :)
标签: android sqlite android-sqlite