Java 退出应用程序时出现启动屏幕活动
每当我尝试按两次后退按钮退出我的应用程序时,启动屏幕就会出现,并且它会冻结,直到我再次按后退按钮。所以我需要按下后退按钮三次才能退出我的应用程序。请帮助我退出应用程序,只需按两次后退按钮 项目中的java代码如下所示:Java 退出应用程序时出现启动屏幕活动,java,android,Java,Android,每当我尝试按两次后退按钮退出我的应用程序时,启动屏幕就会出现,并且它会冻结,直到我再次按后退按钮。所以我需要按下后退按钮三次才能退出我的应用程序。请帮助我退出应用程序,只需按两次后退按钮 项目中的java代码如下所示: public void onBackPressed() { if (doubleBackToExitPressedOnce) { super.onBackPressed(); MapsActivity.this.finish();
public void onBackPressed()
{
if (doubleBackToExitPressedOnce)
{
super.onBackPressed();
MapsActivity.this.finish();
}
this.doubleBackToExitPressedOnce = true;
Toast.makeText(this, "Please click Back again to exit", Toast.LENGTH_SHORT).show();
new Handler().postDelayed(new Runnable()
{
@Override
public void run()
{
doubleBackToExitPressedOnce = false;
}
}, 2000);
}
public class SplashScreen extends AppCompatActivity {
ImageView logoView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_splash_screen);
Animation anim1 = AnimationUtils.loadAnimation(this,R.anim.anim_down);
logoView = findViewById(R.id.logoview);
logoView.setAnimation(anim1);
Handler handler = new Handler();
handler.postDelayed(new Runnable()
{
@Override
public void run()
{
Intent next_scrn = new Intent(SplashScreen.this,MapsActivity.class);
startActivity(next_scrn);
overridePendingTransition(android.R.anim.fade_in, android.R.anim.fade_out);
}
},2500);
}
}
我的启动屏幕代码如下:
public void onBackPressed()
{
if (doubleBackToExitPressedOnce)
{
super.onBackPressed();
MapsActivity.this.finish();
}
this.doubleBackToExitPressedOnce = true;
Toast.makeText(this, "Please click Back again to exit", Toast.LENGTH_SHORT).show();
new Handler().postDelayed(new Runnable()
{
@Override
public void run()
{
doubleBackToExitPressedOnce = false;
}
}, 2000);
}
public class SplashScreen extends AppCompatActivity {
ImageView logoView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_splash_screen);
Animation anim1 = AnimationUtils.loadAnimation(this,R.anim.anim_down);
logoView = findViewById(R.id.logoview);
logoView.setAnimation(anim1);
Handler handler = new Handler();
handler.postDelayed(new Runnable()
{
@Override
public void run()
{
Intent next_scrn = new Intent(SplashScreen.this,MapsActivity.class);
startActivity(next_scrn);
overridePendingTransition(android.R.anim.fade_in, android.R.anim.fade_out);
}
},2500);
}
}
您应该在开始新活动后完成Splash活动,因此请使用:
handler.postDelayed(new Runnable()
{
@Override
public void run()
{
Intent next_scrn = new Intent(SplashScreen.this,MapsActivity.class);
startActivity(next_scrn);
overridePendingTransition(android.R.anim.fade_in, android.R.anim.fade_out);
SplashScreen.this.finish();
}
},2500);
您应该在开始新活动后完成Splash活动,因此请使用:
handler.postDelayed(new Runnable()
{
@Override
public void run()
{
Intent next_scrn = new Intent(SplashScreen.this,MapsActivity.class);
startActivity(next_scrn);
overridePendingTransition(android.R.anim.fade_in, android.R.anim.fade_out);
SplashScreen.this.finish();
}
},2500);
添加finish()代码>在下面的代码之后
Intent next_scrn = new Intent(SplashScreen.this,MapsActivity.class);
startActivity(next_scrn);
添加finish()代码>在下面的代码之后
Intent next_scrn = new Intent(SplashScreen.this,MapsActivity.class);
startActivity(next_scrn);
您必须完成()启动屏幕,如下所示,而不是按您的条件进行反压操作
Intent next_scrn = new Intent(SplashScreen.this,MapsActivity.class);
startActivity(next_scrn);
overridePendingTransition(android.R.anim.fade_in, android.R.anim.fade_out);
finish();
您必须完成()启动屏幕,如下所示,而不是按您的条件进行反压操作
Intent next_scrn = new Intent(SplashScreen.this,MapsActivity.class);
startActivity(next_scrn);
overridePendingTransition(android.R.anim.fade_in, android.R.anim.fade_out);
finish();
它的工作非常感谢,很抱歉我不能放弃投票,因为我没有声誉。它的工作非常感谢,很抱歉我不能放弃投票,因为我没有声誉。删除MapsActivity.this.finish()编码>并从SplashScreen
活动中添加finish()
。删除MapsActivity.this.finish()编码>并从SplashScreen
活动中添加finish()。