Steuerelemente verwenden – TextView
Dient zum Anzeigen eines Textes auf der Benutzeroberfläche.
<TextView
android:id="@+id/text_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Dritte Aktivität" />Code-Sprache: HTML, XML (xml)
android:id Eindeutige Kennung des Steuerelements
android:layout_width Breite
android:layout_height Höhe
Alle Android-Steuerelemente haben diese beiden Attribute. Es gibt drei mögliche Werte: match_parent, fill_parent, wrap_content
android:text Der anzuzeigende Text
Ein Wert bedeutet: Die Größe wird vom übergeordneten Container festgelegt
Der andere Wert bedeutet: Die Größe richtet sich nach dem Inhalt
Natürlich kannst du abgesehen von diesen drei Werten auch eine feste Größe festlegen. Das führt aber zu Anpassungsproblemen auf unterschiedlichen Bildschirmen.
android:gravity=“center“
Textausrichtung: top, bottom, left, right, center
android:textSize=“24sp“
Textgröße
android:textColor=“#00ff00″
Bei Android wird die Einheit sp für die Schriftgröße verwendet.
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/textview"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Hier wird nur Text angezeigt"
android:gravity="center_vertical"
android:textSize="28sp"
android:textColor="#57d038"
/>
</LinearLayout>Code-Sprache: HTML, XML (xml)

Steuerelemente verwenden – Button
Steuerelement für die Interaktion mit dem Benutzer.
<Button
android:id="@+id/button"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="App beenden" />Code-Sprache: HTML, XML (xml)
Automatische Großschreibung von Buchstaben deaktivieren
android:textAllCaps = „false“
Ereignis-Listener hinzufügen
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.textview_layout);
Button bt = (Button) findViewById(R.id.button);
bt.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View v){
//
}
});
}
}Code-Sprache: JavaScript (javascript)
Ereignis-Listener durch Implementieren des Interfaces hinzufügen
public class MainActivity extends AppCompatActivity implements View.OnClickListener{
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.textview_layout);
Button bt = (Button)findViewById(R.id.button);
bt.setOnClickListener(this);// Listener im aktuellen Kontext registrieren
}
@Override
public void onClick(View view) {
switch (view.getId()) {
case R.id.button:
//Klickereignis des Buttons verarbeiten
Toast.makeText(MainActivity.this,"foxdevelop.com",Toast.LENGTH_LONG).show();
break;
}
}
}Code-Sprache: PHP (php)

Steuerelemente verwenden – EditText
EditText erlaubt dem Benutzer, Inhalte einzugeben und zu bearbeiten. Im Programm können wir diese Inhalte verarbeiten.
Weit verbreitet
Wird bei WeChat, SMS, QQ-Chats und vielen weiteren Anwendungen benutzt.
<EditText
android:id="@+id/edit_text"
android:layout_width="match_parent"
android:layout_height="wrap_content" />Code-Sprache: HTML, XML (xml)
Hinweistext im Eingabefeld

Attribut hinzufügen
android:hint=“Bitte gib deinen Namen ein“
Wenn die Eingabe zu lang wird

Wir können festlegen
Maximale Zeilenanzahl
android:maxLines=“2″

<EditText
android:id="@+id/edit_text"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Bitte gib deinen Namen ein"
android:maxLines="2"
/>Code-Sprache: HTML, XML (xml)
Test: Klicke auf den Button, um den Inhalt des Eingabefelds anzuzeigen
//Eingabeinhalt abrufen
EditText et = (EditText)findViewById(R.id.edit_text);
String input = et.getText().toString();
Toast.makeText(NormalActivity.this,input,Toast.LENGTH_LONG).show();Code-Sprache: JavaScript (javascript)

Steuerelemente verwenden – ImageView
Dient zum Anzeigen eines Bildes auf der Oberfläche.
Wir brauchen Bilddateien vorzubereiten
Meistens in einem Ordner mit dem Präfix drawable abgelegt
Erstelle unter res den Ordner drawable-xhdpi und lege dort zwei Bilder img1.png und img2.png ab

ImageView hinzufügen und Bild festlegen
<ImageView
android:id="@+id/imageview1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/img1"
/>Code-Sprache: HTML, XML (xml)
Bild per Knopfdruck wechseln

//Bild per Klick auf den Button ändern
ImageView iv = (ImageView) findViewById(R.id.imageview1);
iv.setImageResource(R.drawable.img2);Code-Sprache: JavaScript (javascript)
Steuerelemente verwenden – ProgressBar
Zeigt einen Fortschrittsbalken auf der Oberfläche an
Signalisiert, dass die Anwendung Daten lädt
Sehr einfach zu benutzen
<ProgressBar
android:id="@+id/progress_bar"
android:layout_width="match_parent"
android:layout_height="wrap_content" />Code-Sprache: HTML, XML (xml)
Alle Steuerelemente besitzen dieses Attribut

Attribut visibility, drei mögliche Werte:
visible sichtbar, Standardwert
invisible unsichtbar, nimmt aber weiterhin Platz und Größe ein (wie ein transparentes Element)
gone gone: nicht sichtbar und belegt keinen Bildschirmplatz
Mit setVisibility setzen
View.VISIBLE
View.INVISIBLE
View.GONE
Fortschrittsbalken per Klick abwechselnd ein- und ausblenden
//Fortschrittsbalken abwechselnd anzeigen und verstecken
ProgressBar pb = (ProgressBar) findViewById(R.id.progress_bar);
if (pb.getVisibility()==View.GONE){
pb.setVisibility(View.VISIBLE);
}
else {
pb.setVisibility(View.GONE);
}Code-Sprache: JavaScript (javascript)
Stil des Fortschrittsbalkens festlegen
style=“?android:attr/progressBarStyleHorizontal“
android:max=“100″ Maximalwert für den Balken setzen
Dynamisch verändern

//Fortschritt dynamisch anpassen
ProgressBar pb = (ProgressBar) findViewById(R.id.progress_bar);
pb.setProgress(pb.getProgress()+10);Code-Sprache: JavaScript (javascript)

Steuerelemente verwenden – AlertDialog
AlertDialog öffnet einen Dialog über der aktuellen Oberfläche.
Dieser Dialog liegt über allen anderen Oberflächenelementen.
Deshalb nutzt man AlertDialog für wichtige Hinweise oder Warnmeldungen.
Zum Beispiel eine Warnung, um versehentliches Löschen wichtiger Daten zu verhindern.
Anzeigen per Knopfdruck

Dieses Steuerelement fügst du nicht in die Layout-Datei ein.

Es kann vollständig im Java-Code erstellt werden
//Einen Dialog erstellen
AlertDialog.Builder ad = new AlertDialog.Builder(NormalActivity.this);
ad.setTitle("Dialogtitel");
ad.setMessage("Hinweistext");
ad.setCancelable(false);
ad.setPositiveButton("OK", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
//Aktion bei Klick auf OK
Toast.makeText(NormalActivity.this,"Du hast OK geklickt", Toast.LENGTH_LONG).show();
}
});
ad.setNegativeButton("Abbrechen", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
//Aktion bei Klick auf Abbrechen
Toast.makeText(NormalActivity.this,"Du hast Abbrechen geklickt", Toast.LENGTH_LONG).show();
}
});
ad.show();Code-Sprache: JavaScript (javascript)
Steuerelemente verwenden – ProgressDialog
ProgressDialog ähnelt AlertDialog. Es ist ebenfalls ein Dialogfenster auf der Oberfläche.
Der Unterschied: ProgressDialog zeigt zusätzlich einen Fortschrittsbalken an.
Verwendet für langwierige Vorgänge, damit der Benutzer weiß, dass er warten muss.
//Verwendung von ProgressDialog
ProgressDialog pd = new ProgressDialog(NormalActivity.this);
pd.setTitle("Titel");
pd.setMessage("Inhalt");
pd.setCancelable(true);
pd.show();Code-Sprache: JavaScript (javascript)

Steuerelemente