Android 使用“后退”按钮重新启动活动

Android 使用“后退”按钮重新启动活动,android,android-activity,onresume,application-restart,Android,Android Activity,Onresume,Application Restart,基本上,我的MainActivity有一个按钮,单击后该按钮将不可见,几秒钟后将调用SecondActivity。但是,当我按下back按钮时,MainActivity上的按钮仍然不可见。我希望MainActivity重新启动/初始化。我知道这与onResume或onRestart有关,但如何实现这些方法呢?谁能给我举个例子吗?谢谢。我想您正在寻找startActivityForResult。您可以在Android文档或中看到使用示例 基本上,在您的第一个活动中,您覆盖了activityresu

基本上,我的MainActivity有一个按钮,单击后该按钮将不可见,几秒钟后将调用SecondActivity。但是,当我按下back按钮时,MainActivity上的按钮仍然不可见。我希望MainActivity重新启动/初始化。我知道这与onResume或onRestart有关,但如何实现这些方法呢?谁能给我举个例子吗?谢谢。

我想您正在寻找startActivityForResult。您可以在Android文档或中看到使用示例

基本上,在您的第一个活动中,您覆盖了activityresult的方法
,并在其中(如果结果是
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);