我有一个具有主要活动的应用程序,您可以从中选择多个选项,这些选项可以进入不同的活动。我想要做的是,一旦选择了一个选项,如果我关闭并再次打开,应用程序将从第二个活动开始(从所选选项的屏幕开始)。
这是我的主要活动,但不起作用:
公共类InicioActivity扩展了Activity {
Button b1;
Button b2;
SharedPreferences sharedPreferences;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.inicio);
b1=(Button)findViewById(R.id.b1);
b2=(Button)findViewById(R.id.b2);
ElegirIdioma();
sharedPreferences = PreferenceManager.getDefaultSharedPreferences(this);
if (sharedPreferences.getBoolean("startFromSecondActivity", false))
{
Intent intent = new Intent(this, EspanolActivity.class);
startActivity(intent);
finish();
}
}
private void ElegirIdioma() {
b1.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
SharedPreferences.Editor editor = sharedPreferences.edit();
editor.putBoolean("startFromSecondActivity", true);
editor.commit();
Intent aEspanol = new Intent(InicioActivity.this, EspanolActivity.class);
startActivity(aEspanol);
Toast.makeText(v.getContext(), "Bienvenido" , Toast.LENGTH_SHORT).show();
}
});
/*b2.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Intent aEnglish= new Intent(InicioActivity.this, EnglishMainActivity.class);
startActivity(aEnglish);
Toast.makeText(v.getContext(), "Bienvenido" , Toast.LENGTH_SHORT).show();
}
});*/
} }
答案 0 :(得分:3)
您可以在SharedPreference
和MainActivity
的{{1}}方法更改中保存该选项以获取已保存的值,然后您可以onCreate
finish()
和MainActivity
开始SecondActivity
将此内容放入onCreate
方法:
SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(this);
if (sharedPreferences.getBoolean("startFromSecondActivity", false))
{
Intent intent = new Intent(this, SecondActivity.class);
startActivity(intent);
finish();
}
并将其放入Button
的{{1}}方法:
onClick