Ich habe eine ActionBar in meiner Android App (API Level 14). Es gibt einen Home-Button mit meinem App-Icon. In MainActivity schreibe ich einen kurzen Text in eine EditText View. Wenn ich zu PreferenceActivity navigiere, erhält das Symbol einen Pfeil, um mich zu signalisieren, ich kann zur Home Activity (MainActivity) navigieren.Android - Klicken Sie auf ActionBar App Symbol, erstellen Sie neue Aktivität Instanz
// PreferenceActivity-onCreate
ActionBar actionBar = getActionBar();
actionBar.setDisplayHomeAsUpEnabled(true);
ich auf diesem App-Icon in ActionBar zu MainActivity zurückzukehren
// PreferenceActivity
@Override
public boolean onOptionsItemSelected(MenuItem item)
{
switch (item.getItemId())
{
case android.R.id.home:
Intent intent = new Intent(this, MainActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
return true;
default:
return super.onOptionsItemSelected(item);
}
}
Jetzt wurde mein MainActivity erstellt wieder und der Text in EditText verschwunden ist. Ich dachte, ich kann die MainActivity mit der Intent.FLAG_ACTIVITY_CLEAR_TOP am Leben erhalten. Ich möchte ein Verhalten wie ich meine Return-Taste auf dem Gerät verwenden.
Dieser Weg funktioniert nicht. Aber wenn ich 2 addFlags schreibe, funktioniert es gut. \t \t \t intent.addFlags (Intent.FLAG_ACTIVITY_CLEAR_TOP); \t \t \t intent.addFlags (Intent.FLAG_ACTIVITY_SINGLE_TOP); – Gepro
Ah ... so leid, du brauchst ein einziges "|" und nicht "||" zwischen den 2 Flaggen. Mein Fehler. Sie möchten ein ** bitweises ** ODER, kein ** logisches ** ODER. Ich habe meine Antwort bearbeitet. –
Richtig, ich muss bemerkt haben, dass – Gepro