所以我能够使用UserSettingsFragment成功登录和注销,但登录后似乎无法获得任何其他功能。我想在成功登录后将UserSettingsFragment替换为我自己的片段不起作用的代码是:
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
userSettingsFragment.onActivityResult(requestCode, resultCode, data);
super.onActivityResult(requestCode, resultCode, data);
uiHelper.onActivityResult(requestCode, resultCode, data);
FacebookHelperFragment fbhf = new FacebookHelperFragment();
FragmentManager fm = getSupportFragmentManager();
fm.beginTransaction().replace(R.id.fb_helper_frag, fbhf)
.addToBackStack(null).commit();
}
当我运行它时,看起来fbhf暂时在屏幕上闪烁,但随后它会立即返回显示UserSettingsFragment的默认登录屏幕,该屏幕显示登录用户的姓名和带有注销按钮的图片。另外,我真的不想使用任何已弃用的代码。有没有人真正使用UserSettingsFragment,除了仅注销或作为SessionLoginSample的一部分,我还没有看到它的大量用法。
由于
答案 0 :(得分:0)
在我睡梦中,答案来了。
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
userSettingsFragment.onActivityResult(requestCode, resultCode, data);
super.onActivityResult(requestCode, resultCode, data);
uiHelper.onActivityResult(requestCode, resultCode, data);
if (resultCode == -1) {
FacebookHelperFragment fbhf = new FacebookHelperFragment();
FragmentManager fm = getSupportFragmentManager();
fm.beginTransaction().hide(userSettingsFragment)
.add(R.id.fb_helper_frag, fbhf).addToBackStack(null)
.commit();
}
}
在动态添加我的FacebookHelperFragment之前,只需要隐藏静态userSettingsFragment。