java - Facebook SDK 4.4.+ |登录后如何 Conceal 注销按钮?

标签 java android facebook facebook-sdk-4.0

在应用程序中登录 Facebook 后,如何 Conceal 登录按钮? 我想将登录(注销)按钮放在 menu_login.xml 或其他位置。

我的登录 Activity 。

public class LoginActivity extends AppCompatActivity {

private LoginButton loginButton;
private CallbackManager callbackManager;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    FacebookSdk.sdkInitialize(getApplicationContext());
    callbackManager = CallbackManager.Factory.create();

    setContentView(R.layout.activity_login);

    loginButton = (LoginButton) findViewById(R.id.login_button);

    // Callback registration
    loginButton.registerCallback(callbackManager, new     FacebookCallback<LoginResult>() {

        @Override
        public void onSuccess(LoginResult loginResult) {
            Intent intent = new Intent (LoginActivity.this,     MainActivity.class);
            startActivity(intent);


        }

        @Override
        public void onCancel() {

        }

        @Override
        public void onError(FacebookException exception) {

        }
    });
}

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent         data) {
    super.onActivityResult(requestCode, resultCode, data);
    callbackManager.onActivityResult(requestCode, resultCode, data);
}
}

这是我在 menu_login.xml 中放入的内容

    <item android:id="@+id/login_button" android:title="Log out"
    android:orderInCategory="10" app:showAsAction="never" />

但是当我按下注销按钮时,什么也不会发生。

我也尝试过在登录后将我从一个 Activity 发送到另一个 Activity,但随后出现了更多问题。

 @Override
        public void onSuccess(LoginResult loginResult) {
            Intent intent = new Intent (LoginActivity.this, MainActivity.class);
            startActivity(intent);
  1. 我无法将登录/退出按钮放入新的 Activity 中。
  2. 当我按下登录按钮时,它会快速跳转到注销按钮站点,然后跳到新的 Activity,这很奇怪,所以我不想从一个 Activity 发送到另一个 Activity。

那么,如何在登录后 Conceal 注销按钮呢?

谢谢。

最佳答案

您可以使用本地广播管理器类并在您的应用程序中广播您已成功登录 Facebook。然后,您的 MainActivity(或任何感兴趣的人)将需要收听该广播并采取相应的行动。

更多信息: http://developer.android.com/intl/es/reference/android/support/v4/content/LocalBroadcastManager.html

关于java - Facebook SDK 4.4.+ |登录后如何 Conceal 注销按钮?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31630847/

相关文章:

java - Android Fragment 不接受 setcontentview

java - 我如何知道 BufferedReader 的 readAheadLimit?

android - 无法从网址下载图片

java - IE/Facebook 问题 : Why Facebook Like box not display in Internet Explorer 6 - IE8?

javascript - 使用 JavaScript 获取当前 URL,然后在 html 代码中使用派生值

javascript - 如何从 Facebook :iframe? 中的 javascript 访问 Facebook 用户 ID

java - 无法使用新值重新加载 JGrid

java - Proguard 使我的 RemoteController compat 实现在 API<19 设备上崩溃

Android:如何最大化 PreferenceFragment 宽度(或摆脱边距)?

Android 两个日期之间的差异