好吧,我让自己成为一个小项目,有点模拟你有什么。我将在下面的代码中省略进口。另外,阅读所有的代码和评论,我没有写他们让你跳过它们。我们称之为类飞溅,登录,page1,page2和page3。在你的splash类中,在onCreate()方法之前,让我们举几个例子。
package com.test.jeets;
public class splash extends Activity {
//Add all of these right here!
public static boolean loggedin = false;
public static int sdk = new Integer(Build.VERSION.SDK).intValue();
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.splash);
//This is your splash screen, all the code goes here!
}
}
现在,这就是你的闪屏!完成!对于登录屏幕,我们要确保它不能回到启动屏幕,而是在按下后退时退出应用程序。这很容易!我们只需重写后退按钮并使用moveTaskToBack(true)
。
package com.test.jeets;
public class login extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.login);
//This is the login page stuff. Nothing special needs done here.
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (splash.sdk < 5 && keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0) {
onBackPressed();
}
return super.onKeyDown(keyCode, event);
}
//This will make the back button exit the app to the home screen.
@Override
public void onBackPressed() {
moveTaskToBack(true);
return;
}
//If the user leaves the app from the login screen while not logged in, they are returned to the splash screen.
@Override
public void onRestart() {
super.onRestart();
if(splash.loggedin == false){
Intent i = new Intent(login.this, splash.class);
startActivity(i);}
}
}
现在,完成了!让我们去你的第一页(你去你登录后的页面),并在onCreate()
方法中添加一行
splash.loggedin = true;
你可能要考虑让用户回到此页面的日志出来以及。没有必要,但肯定可以。
您需要做的最后一件事是在用户使用注销按钮注销时将该变量设置为false。因此,在按钮的代码中,在再次启动登录活动的调用之前,只需添加splash.loggedin = false;
即可。现在,当按钮被点击时,它会将用户登出,将变量设置为false,并将它们带到登录屏幕。就像我说过的,我测试了这个简单的布局和活动之间的真正的基本切换,它对我来说工作得很好。
来源
2011-07-05 17:44:59
Rob
但是在我的情况下,当我按下登录活动上的按钮时,我会进行初始活动,然后我能够退出应用程序,但是当我再次启动应用程序时,我没有看到启动活动,我从登录活动开始。因此我想在再次启动应用程序时看到启动画面。请帮助我,如果你能给我另一个建议。 – Jitendra
在最后添加一点,应该有所帮助。 – Rob
我不确定如何使用它。请帮助我,我正面临着这个问题。 – Jitendra