在应用程序中登录 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);
- 我无法将登录/退出按钮放入新的 Activity 中。
- 当我按下登录按钮时,它会快速跳转到注销按钮站点,然后跳到新的 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/