0

因此,我能够使用 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 的一部分之外,我没有看到太多使用它。

谢谢

4

1 回答 1

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。

于 2013-02-13T10:47:17.757 回答