Steuerelemente

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

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert