我正在使用导航抽屉显示所有项目,例如Setting, Profile, Contact Us, About Us, Logout
,当点击任何这些项目时,它应显示在片段或其他活动中。
我尝试创建Logout Fragment
但是使用Activity&意图。
如何点击退出时,它应该完全从应用程序注销,就像任何银行应用程序一样。
答案 0 :(得分:1)
您不需要创建用于注销的片段,点击注销即可在代码下方运行
Intent intent = new Intent(Intent.ACTION_MAIN);
intent.addCategory(Intent.CATEGORY_HOME);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
答案 1 :(得分:0)
我创建了如下对话框:
public void logoutDialog() {
/**
* Create Alert DialogBuilder */
final AlertDialog.Builder logoutAlert = new AlertDialog.Builder(this);
final RowLogoutDialogsBinding logoutDialogsBinding = DataBindingUtil.inflate(LayoutInflater.from(mContext), R.layout.row_logout_dialogs, null, false);
View logoutView = logoutDialogsBinding.getRoot();
logoutAlert.setView(logoutView);
/*
* Create Alert Dialogs */
final AlertDialog mLogoutDialog = logoutAlert.create();
mLogoutDialog.setTitle(getString(R.string.logout_dialog_title));
mLogoutDialog.show();
/*
* Layout for dialog */
setFontFace(logoutDialogsBinding.logoutMessage);
logoutDialogsBinding.logoutNo.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
mLogoutDialog.dismiss();
}
});
logoutDialogsBinding.logoutYes.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
mLogoutDialog.dismiss();
AccountAuthenticator.removeAccount(mContext);
finish();
// DO OTHER PROCESS OF LOGOUT like clear PREFERENCE, DB
Toast.makeText(mContext, R.string.string_loggedout_success, Toast.LENGTH_SHORT).show();
}
});
}
点击该菜单项,我刚打开该对话框。
case R.id.nav_logout:
logoutDialogs();
break;
希望它会对你有所帮助。
答案 2 :(得分:0)
希望这个答案将来会有所帮助,
Intent intent = new Intent(MainActivity.this,Login.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); //CLEARS INSTANCES OF ALL YOUR ACTIVITIES
startActivity(intent);
finish(); //CLEARS BACKSTACK ACTIVITIES