Java Reference
In-Depth Information
super.onCreate(savedInstanceState);
setContentView(R.layout.activity2);
Intent intent = getIntent();
String message = intent.getStringExtra(Activity1.MESSAGE);
TextView textView = (TextView) findViewById(R.id.msglabel);
if(message != null)
{
textView.setText(R.string.receiveSuccessMessage);
EditText edit = (EditText) findViewById(R.id.inoutput);
edit.setText(message);
}
else
{
textView.setText(R.string.receiveFailureMessage);
}
}
}
Die Methode onCreate besorgt sich nach dem Aufbau der Oberfl äche eine Referenz auf den
startenden Intent durch Aufruf der geerbten Methode getIntent. Dann wird versucht, vom
Intent-Objekt den unter einer bestimmten Kennung abgespeicherten String auszulesen.
Wenn dies gelingt, wird eine Erfolgsmeldung ausgegeben, deren Text in strings.xml defi -
niert ist, und der im Intent transportierte String in ein Textfeld des Typs EditText geschrie-
ben, das die Kennung inoutput besitzt, wobei die Bezeichnung später erst verständlich wer-
den wird. Falls der Intent die Nachricht nicht enthält, wird eine ebenfalls in strings.xml
festgelegte Fehlernachricht ausgegeben. Dies kann passieren, wenn man ermöglicht, die
Activity2 auch auf andere Weise zu starten.
Als letzte Änderung muss die neue Activity auch noch in AndroidManifest.xml eingetragen
werden:
<?xml version="1.0" encoding="utf-8"?>
<manifest ...>
<application ...>
...
<activity android:name=".Activity2"></activity>
</application>
</manifest ...>
1 6 .5 .2 Start einer Activity mit implizitem Intent
Statt eines expliziten Intents kann in der Methode clicked auch ein impliziter Intent erzeugt
werden. Wenn die Zeile
Intent intent = new Intent(this, Activity2.class);
durch
Intent intent = new Intent(ACTION);
ersetzt wird, wird ein anderer Intent-Konstruktor verwendet, der einen impliziten Intent
erzeugt, wobei ACTION eine in der Klasse Activity1 defi nierte String-Konstante ist. Damit
 
Search WWH ::




Custom Search