我的第一页有一个微调器,它会将值解析为第二个活动..我在第二页上设置onBackPressed返回我的主页,但问题是,微调器选择没有被重置..为什么?
答案 0 :(得分:0)
试试这个
它会刷新你的1stActivity
@Override
public void onResume()
{
super.onResume();
startActivity(getIntent());
}
修改强>
<强>说明强>
您可以看到Lifecycle of the Android here
当您调用从第一个Activity到第二个Activity OnPause()
方法时。当您从第二个活动onResume()
方法返回第一个活动时,将会调用相同的方法。
有两种方法可以重置您的Spinner
第一个
正如您要求通过此方法重新启动第一项活动
startActivity(getIntent()); // It refresh your activity
startActivity(getIntent())
Intent refresh = new Intent(FirstActivity.this,FirstActivity.class)
startActivity(refresh);
第二种方式
Spinner yourSpinner = (Spinner)findViewById(R.id.yourSpinnerId);
yourSpinner.setSelection(0);// Which reset Spinner to default
希望有所帮助
答案 1 :(得分:0)
在应用程序的onStart方法中设置Adapter,或在onStart()方法中调用notifyDataSetChanged()方法。
答案 2 :(得分:0)
当您从活动B返回活动A时,将调用活动A中的onRestart方法 您可以覆盖该方法并在那里清除微调器。
@Override
public void onRestart()
{
//clear your spinner here... spinner.setSelection(0) or something..
super.onResume();
}
以下是解释:
onRestart:在您的活动停止之后,再次启动之前调用。 始终紧跟onStart()