Android 使用“后退”按钮重新启动活动
基本上,我的MainActivity有一个按钮,单击后该按钮将不可见,几秒钟后将调用SecondActivity。但是,当我按下back按钮时,MainActivity上的按钮仍然不可见。我希望MainActivity重新启动/初始化。我知道这与onResume或onRestart有关,但如何实现这些方法呢?谁能给我举个例子吗?谢谢。我想您正在寻找startActivityForResult。您可以在Android文档或中看到使用示例 基本上,在您的第一个活动中,您覆盖了activityresult的方法Android 使用“后退”按钮重新启动活动,android,android-activity,onresume,application-restart,Android,Android Activity,Onresume,Application Restart,基本上,我的MainActivity有一个按钮,单击后该按钮将不可见,几秒钟后将调用SecondActivity。但是,当我按下back按钮时,MainActivity上的按钮仍然不可见。我希望MainActivity重新启动/初始化。我知道这与onResume或onRestart有关,但如何实现这些方法呢?谁能给我举个例子吗?谢谢。我想您正在寻找startActivityForResult。您可以在Android文档或中看到使用示例 基本上,在您的第一个活动中,您覆盖了activityresu
,并在其中(如果结果是OK
)重新显示该按钮。然后,在第二个活动中,将要返回的结果设置为OK,然后按自己喜欢的方式完成它(通过按后退按钮或调用finish()
)
或者:
您可以在第一个活动中编写onResume
方法,并在每次调用此方法时仅显示按钮(请注意,即使在活动的第一次启动时,onResume
也会被调用,但由于此按钮已在您的案例中显示,因此不会产生任何效果)
当转到第二个活动时,可以在main活动上调用finish()
。然后在SecondActivity
中重写onBackPressed()
,然后再次启动main活动
@Override
public void onBackPressed()
{
// create Intent and start MainActivity again
}
在活动中,只需写下
@Override
public void onResume(){
// put your code here...
yourButtonInstance.setVisibility(View.VISIBLE)
}
并将更改可见性所需的逻辑放入其中您可以将按钮设置为活动的属性,并使按钮在onPause()或onResume()方法中可见
谢谢你的回复。应该放什么代码?这就是问题所在。yourButtonInstance.setVisibility(View.VISIBLE)
@Override
public void onResume(){
// put your code here...
yourButtonInstance.setVisibility(View.VISIBLE)
}
button.setVisibility(View.VISIBLE);