Vlastní tlačítko
V této části vytvoříte tlačítko s vlastním obrázkem místo textu pomocí Button
widgetu a souboru XML, který definuje tři různé obrázky, které se mají použít pro různé stavy tlačítek. Po stisknutí tlačítka se zobrazí krátká zpráva.
Klikněte pravým tlačítkem myši a stáhněte si níže uvedené tři obrázky a zkopírujte je do adresáře Zdroje/kreslení projektu . Ty se použijí pro různé stavy tlačítek.
V adresáři Resources/drawable vytvořte nový soubor s názvem android_button.xml. Vložte následující kód XML:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/android_pressed"
android:state_pressed="true" />
<item android:drawable="@drawable/android_focused"
android:state_focused="true" />
<item android:drawable="@drawable/android_normal" />
</selector>
Tím se definuje jeden nakreslený prostředek, který změní jeho obrázek na základě aktuálního stavu tlačítka. První <item>
definuje android_pressed.png jako obrázek při stisknutí tlačítka (je aktivované); druhý <item>
definuje android_focused.png jako obrázek při fokusu (když je tlačítko zvýrazněno pomocí trackballu nebo směrového panelu) a třetí <item>
definuje android_normal.png jako obrázek pro normální stav (když není stisknuto ani fokus). Tento soubor XML teď představuje jeden nakreslený prostředek a při odkazování na Button
jeho pozadí se zobrazený obrázek změní na základě těchto tří stavů.
Poznámka:
Pořadí <item>
prvků je důležité. Když se na tento nakreslený odkaz odkazuje, prochází se s, aby bylo možné určit, <item>
který z nich je vhodný pro aktuální stav tlačítka.
Vzhledem k tomu, že "normální" obrázek je poslední, použije se pouze v případě, že podmínky android:state_pressed
a android:state_focused
oba vyhodnotí hodnotu false.
Otevřete soubor Resources/layout/Main.axml a přidejte Button
element:
<Button
android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="10dp"
android:background="@drawable/android_button" />
Atribut android:background
určuje nakreslený zdroj, který se má použít pro pozadí tlačítka (který se při uložení na zdroje/ kreslitelné/android.xml odkazuje jako @drawable/android
). Tím se nahradí normální obrázek pozadí používaný pro tlačítka v celém systému. Aby bylo možné kreslit a změnit jeho obrázek na základě stavu tlačítka, musí být obrázek použit na pozadí.
Když stisknete tlačítko, přidejte na konec tlačítka následující kód. OnCreate()
Metoda:
Button button = FindViewById<Button>(Resource.Id.button);
button.Click += (o, e) => {
Toast.MakeText (this, "Beep Boop", ToastLength.Short).Show ();
};
Tím se Button
z rozložení zachytí a po Toast
kliknutí se zobrazí zpráva Button
.
Teď spusťte aplikaci.
Části této stránky jsou upraveny na základě práce vytvořené a sdílené opensourcový projekt Androidu a používají se podle podmínek popsaných vlicenci Creative Commons 2.5 Atribution License.