基本上我的 MainActivity 有一个按钮,单击后将变为不可见,而 SecondActivity 将在几秒钟后被调用。但是,当我按下后退按钮时,MainActivity 上的按钮仍然不可见。我希望 MainActivity 重新启动/初始化。我知道这与 onResume 或 onRestart 有关,但我该如何实现这些方法?谁能给我一个例子?谢谢。
问问题
969 次
4 回答
0
我认为您正在寻找 startActivityForResult。您可以在 Android 文档或此处查看使用示例。
基本上在您的第一个活动中,您会覆盖该方法onActivityResult
并在其中(如果结果是OK
)重新显示按钮。然后,在第二个活动中,将要返回的结果设置为 OK,然后按照您的喜好完成它(通过按下后退按钮或调用finish()
)。
或者:
您可以onResume
在第一个活动中覆盖该方法,并在每次调用此方法时只显示按钮(请注意,onResume
即使在活动第一次启动时也会调用该按钮,但由于该按钮已在您的案例中显示 - 它不会有任何效果) .
@Override
public void onResume(){
Button b = (Button) findViewById(R.id.myButton);
b.setVisibility(View.VISIBLE);
}
于 2014-02-07T15:35:22.263 回答
0
当你去第二个时,你可以打电话finish()
给你。MainActivity
然后Override onBackPressed()
在你的SecondActivity
并重新开始MainActivity
。
@Override
public void onBackPressed()
{
// create Intent and start MainActivity again
}
于 2014-02-07T15:36:23.417 回答
0
在您的活动中,只需编写
@Override
public void onResume(){
// put your code here...
yourButtonInstance.setVisibility(View.VISIBLE)
}
并将更改可见性所需的逻辑放入其中
于 2014-02-07T15:36:25.530 回答
0
您可以将您的按钮设置为活动的属性,并使您的按钮在 onPause() 或 onResume() 方法中可见。
button.setVisibility(View.VISIBLE);
于 2014-02-07T15:39:16.520 回答