Aracılığıyla paylaş


Özel Düğme

Bu bölümde, pencere öğesini ve farklı düğme durumları için kullanılacak üç farklı görüntüyü tanımlayan bir XML dosyasını kullanarak Button metin yerine özel görüntü içeren bir düğme oluşturacaksınız. Düğmeye basıldığında kısa bir ileti görüntülenir.

Aşağıdaki üç resme sağ tıklayıp indirin, ardından bunları projenizin Resources/drawable dizinine kopyalayın. Bunlar farklı düğme durumları için kullanılır.

Green Android icon for normal stateOrange Android icon for focused stateYellow Android icon for pressed state

Resources/drawable dizininde android_button.xml adlı yeni bir dosya oluşturun. Aşağıdaki XML'yi ekleyin:

<?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>

Bu, düğmenin geçerli durumuna göre görüntüsünü değiştirecek tek bir çizilebilir kaynak tanımlar. birincisi<item>, düğmeye basıldığında (etkinleştirildiğinde) android_pressed.png resim olarak tanımlar; ikincisi<item>, düğme odaklandığında (düğme trackball veya yön paneli kullanılarak vurgulandığında) android_focused.png resim olarak tanımlar ve üçüncüsü <item> android_normal.png normal durumun görüntüsü olarak tanımlar (ne basıldığında ne de odaklanıldığında). Bu XML dosyası artık tek bir çizilebilir kaynağı temsil eder ve arka planı için bir Button tarafından başvurulduğunda, görüntülenen görüntü bu üç duruma göre değişir.

Not

Öğelerin sırası <item> önemlidir. Bu çizilebilir öğeye <item>başvurulduğunda, geçerli düğme durumu için hangisinin uygun olduğunu belirlemek için s'ler sırayla geçirilir. "Normal" görüntü son olduğundan, yalnızca koşullar android:state_pressedandroid:state_focused ve her ikisi de false olarak değerlendirildiğinde uygulanır.

Resources/layout/Main.axml dosyasını açın ve öğesini ekleyinButton:

<Button
        android:id="@+id/button"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:padding="10dp"
        android:background="@drawable/android_button" />

android:background özniteliği, düğme arka planı için kullanılacak çizilebilir kaynağı belirtir (Resources/drawable/android.xml'a kaydedildiğinde olarak @drawable/androidbaşvurulur). Bu, sistem genelindeki düğmeler için kullanılan normal arka plan görüntüsünün yerini alır. Çizilebilir öğesinin düğmesinin durumuna göre görüntüsünü değiştirebilmesi için görüntünün arka plana uygulanması gerekir.

Düğmeye basıldığında bir şey yapmak için OnCreate() Yöntem:

Button button = FindViewById<Button>(Resource.Id.button);

button.Click += (o, e) => {
    Toast.MakeText (this, "Beep Boop", ToastLength.Short).Show ();
};

Bu, düzeninden öğesini yakalar Button ve tıklandığında Button görüntülenecek bir Toast ileti ekler.

Şimdi uygulamayı çalıştırın.

Bu sayfanın bazı bölümleri, Android Açık Kaynak Projesi tarafından oluşturulan ve paylaşılan çalışmaya dayalı değişikliklerdir ve Creative Commons 2.5 İlişkilendirme Lisansı'nda açıklanan koşullara göre kullanılır.