Yorum bırakın

Android xml’de karşılaşılan bazı “warning”ler

Başlık oldukça saçma oldu gibime geldi ama neyse artık idare edecek bir şekilde. Asıl anlatmak istediğim hani Android için uygulama geliştirirken layout oluşturuyoruz ya. Hani onları da xml dosyalarında oluşturuyoruz. İşte orada bazen karşımıza bazı warningler çıkmakta. Bunların çözümü aslında basit. Ben şahsen warningli bir proje oluşturmak istemediğimden çözümlerini bulmaya çalışıyorum genelde. İşte bunlardan bir kaçı:

1. This tag and its children can be replaced by one <TextView/> and a compound drawable

Eğer böyle bir hatayla karşılaşmışsanız muhtemelen şöyle bir xml’iniz var:

 
<LinearLayout  android:layout_width="fill_parent" 
android:layout_height="wrap_content" 
android:layout_marginTop="10dp"   
android:padding="5dp" > 
<TextView     
android:layout_width="wrap_content"     
android:layout_height="wrap_content"     
android:layout_weight="1"     
android:text="My Compound Button" /> 
<ImageView     
android:layout_width="wrap_content"     
android:layout_height="wrap_content"     
android:src="@drawable/my_drawable" /> 
</LinearLayout>

ama yapmanız gereken şöyle bir şey:

<TextView       
android:layout_marginTop="10dp"     
android:layout_width="fill_parent"     
android:layout_height="wrap_content"     
android:text="My Compound Button"     
android:drawableRight="@drawable/my_drawable"    
android:padding="5dp" />

Yani böylece textview’in soluna koymuş olduk resmimizi. Mesela benim yaptığım bir şey şöyleydi:

<TextView
 android:id="@+id/textViewGeneral"
 android:layout_width="wrap_content"
 android:layout_height="wrap_content"
 android:layout_gravity="center_horizontal"
 android:textColor="@android:color/black"
 android:text="@string/feedback_genel_memnuniyet"
 android:drawableLeft="@drawable/atac"
 android:gravity="center"
 android:drawablePadding="7dp"
 android:textAppearance="?android:attr/textAppearanceMedium" />

böylece resim ile yazıyı aynı hizaya getirmiş oldum.

2. [Accessibility] Missing contentDescription attribute on image” for imageview

Gelelim bu warninge. Eğer bir imageview kullandıysanız bununla karşılaşmanız çok olası. Çözümü ise oldukça basit. Bu imageview için bir content tanımlamanız isteniyor isteniyor sizden.  Bunun için de res/values/strings de bir description tanımlamak yeterli olacaktır. Ama tabii bir de bunu kullanmak lazım. O da şu şekilde :

android:contentDescription="@string/desc"

Evet şimdilik bu kadar, daha oldukça yazarım..
Kolay gelsin.

Yorum bırakın