【发布时间】:2014-10-27 17:00:12
【问题描述】:
我打开“活动 A”。 “Activity A”立即执行FragmentTransaction 像这样打开“Fragment A”:
FragmentTransaction t = fm.beginTransaction();
ListFragment f = new ProfileFragment();
t.replace(R.id.main_frag, f, "act_frag");
f.setArguments(args);
t.commit();
“Fragment A”上有一个按钮,我想打开一个新的Fragment(“Fragment B”),但将“Fragment A”保留在后台 - 所以如果用户回击,它还在附近。所以我这样做:
FragmentTransaction t = fm.beginTransaction();
ListFragment f = new FollowFragment();
String username = tvUser.getText().toString();
Bundle args = new Bundle();
args.putString("follow", "watching");
args.putString("userprofile", username);
args.putInt("userIdprofile", userId);
f.setArguments(args);
t.replace(R.id.main_frag, f, "watching_frag");
t.addToBackStack("watching_frag");
t.commit();
我认为添加t.addToBackStack(null); 可以解决问题;我以前也这样做过。但是,当用户回击时,它只是关闭“活动 A”。
【问题讨论】:
-
参考我的答案... stackoverflow.com/questions/14971780/…>
-
参考我的答案... stackoverflow.com/questions/14971780/…>
标签: android android-fragments back-stack fragmenttransaction