hi im使用bundle将字符串从我的MainActivity
传递到我的第二个活动(sub genre)。但是我在第三次活动中也需要相同的字符串。
我在主要活动中使用这样的代码
Bundle getGenre_Bundle = new Bundle();
if (genre.equals(selector.Crime)) {
Intent i = new Intent(getBaseContext(),Crime.class);
getGenre_Bundle.putString("crime",selector.Crime);
i.putExtras(getGenre_Bundle);
startActivity(i);
然后我在第二个活动中使用
调用它 Bundle p = getIntent().getExtras();
Genre = p.getString("crime");
这很好用,但是如果我尝试在我的第三次活动中调用它,它将在我的日志中返回一个错误,即我的firebase child(Genre)cant be null
。
我已经通过在第二个活动中制作一个新的捆绑包来解决该问题,该捆绑包会重新收集字符串以传递给我的第三个活动。但这样做的方式有点混乱。有没有更容易/更好的方法来将字符串传递给任何活动?
答案 0 :(得分:1)
您可以从第二个活动中的上一个活动中获取整个捆绑软件,并只需使用 putExtras()
进行设置即可Bundle old = getIntent().getExtras();
Intent thirdActivity = new Intent(this,thirdActivity.class);
thirdActivity.putExtras(p);