Ressourcennamen in Java
In der Zeichenfolgendatei werden zwei Texte definiert.
strings.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="text0">Themenschwerpunkt</string>
<string name="text1">Bewegungsenergie</string>
</resources>
Die folgende XML-Datei definiert eine lineare Anordnung mit einem Textfeld, das den Text »text0« enthält.
Das Textfeld erhält durch »@+id/TextView0« eine Kennzahl mit dem Ressourcennamen »TextView0«.
main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"><TextView android:layout_width="fill_parent"
android:id="@+id/TextView0"
android:layout_height="wrap_content"
android:text="@string/text0" /></LinearLayout>
Nun kann »findViewById( R.id.TextView0 )« genutzt werden, um eine Referenz auf das Textfeld mit dem Namen »R.id.TextView0« zu erhalten. Da die Methode »findViewById« den Rückgabetyp »android.view.View«, aber wir wissen, daß das zurückgegebene Objekt den Typ »android.widget.TextView« hat, wird ein Cast verwendet, um den Typ des Ausdrucks entsprechend anzupassen.
Danach kann dann »textView« wie jede andere bisher behandelte Referenz auf ein Textfeld verwendet werden. Wir zeigen hier beispielsweise einen Aufruf von »setText«, um den Text des Textfeldes auf »R.string.text1« zu setzen.
Main.java
package com.example;
public class MainActivity extends android.app.Activity
{ final android.app.Activity activity = this;@java.lang.Override public void onCreate( final android.os.Bundle bundle )
{ super.onCreate( bundle );
setContentView( R.layout.main );final android.widget.TextView textView =
( android.widget.TextView )
MainActivity.this.activity.findViewById( R.id.TextView0 );textView.setText( MainActivity.this.activity.getString( R.string.text1 ) ); }}
- Ausgabe der App
.---------------------------------.
|---------------------------------|
| MainActivity |
|---------------------------------|
| |
| Bewegungsenergie |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
'---------------------------------'