我正在构建一个需要用户身份验证的应用程序。用户第一次打开应用程序时,应该登录或注册,以继续到加载一些帖子的应用程序的主屏幕上。
我应该提到,主屏幕应该是一个FragmentActivity,允许用户在2-3个选项卡之间导航。这意味着我应该有另一个活动(用于登录屏幕或注册),以允许用户在以后继续回家。
MainActivity
|
|
--> Check If user logged in
| |
| |
| --> Start Login Activity (Or Register From Here)
|
--> Start Home Activity (FragmentActivity with 2-3 tabs-fragments)现在,在主要活动中,如果用户已经登录,我将检查共享首选项,如果用户尚未登录,则启动FragmentActivity或登录活动。
我不知道这是否是一个问题,但当这两个活动之一已经开始时,如果我按下,它会出现在一个空白的屏幕上,什么都不会发生。看起来很有逻辑,因为这是MainActivity和它的实际空白。我只有一个if声明,以便继续进行适当的活动。
这是一个很好的方法,还是我应该用另一种方式来开发?
发布于 2013-12-02 18:09:51
您可以在导航到主/登录屏幕前完成您的主要活动:
Intent intent=new Intent(this,Home.class);
startActivity(intent);
finish();通过这样做,如果用户按下登录或主页上的后退按钮,空白页将不可见。
此外,您也可以使用您的主要活动作为启动屏幕,在这里您显示一些图像,并在后台决定去登录/家庭活动。
发布于 2013-12-02 18:14:36
如果您希望您将登录屏幕作为对话框,这可能对您有帮助。为了创建登录对话框,您可以使用下面的代码。
// Create Object of Dialog class
final Dialog login = new Dialog(this);
// Set GUI of login screen
login.setContentView(R.layout.login_dialog);
login.setTitle("Login to Pulse 7");
// Init button of login GUI
Button btnLogin = (Button) login.findViewById(R.id.btnLogin);
Button btnCancel = (Button) login.findViewById(R.id.btnCancel);
// Attached listener for login GUI button
btnLogin.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(Pulse7LoginDialogActivity.this,
"Login Sucessfull", Toast.LENGTH_LONG).show();
}
});
btnCancel.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
login.dismiss();
}
});
// Make dialog box visible.
login.show();发布于 2014-08-21 04:56:11
这段代码可以用来..。
Intent intent=new Intent(this,Home.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK | Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
finish();https://stackoverflow.com/questions/20334779
复制相似问题