Aslında birden fazla liste görüntülemesi olan bir android uygulaması geliştiriyorum. ListView Uygulaması'nda, her liste görünümü öğesi için bir hücreyi şişiriyorum. Bu, bu hücrenin arka plan üzerine category_cell.xmlHer bir liste görünümü öğesi için farklı basılı durumlar renkleri nasıl ayarlanır?
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="60dip"
android:id="@+id/cell_layout"
android:background="@drawable/list_bg">
<RelativeLayout
android:id="@+id/category_cell_layout"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<ImageView
android:id="@+id/category_image"
android:layout_centerVertical="true"
android:layout_marginLeft="10dip"
android:layout_height="45dip"
android:layout_width="45dip" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/category_name"
android:text="Category Name"
android:textSize="16dip"
android:typeface="sans"
android:layout_centerVertical="true"
android:layout_marginLeft="70dip"
android:textColor="@color/white" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/arrow_image"
android:background="@drawable/list_arrow"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_marginRight="10dip" />
</RelativeLayout>
</RelativeLayout>
olduğunu bir çizilebilir xml yerleştirilir. list_bg.xml kodu aşağıdaki sahiptir:
<?xml version="1.0" encoding="utf-8"?>
<selector
xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:state_selected="false"
android:state_pressed="false"
android:drawable="@color/transparent" />
<item
android:state_pressed="true"
android:drawable="@color/blue" />
<item
android:state_selected="true"
android:state_pressed="false"
android:drawable="@color/blue" />
</selector>
öğelerle liste görünümünü doldurma, ben her öğe için arka plan xml preslenmiş ve odaklanmış devletler için farklı bir renk ayarlamak istiyorum. Her öğe bir rengin değerini içerir ve bu rengin o öğenin basılı durumunda olmasını istiyorum.
StateListDrawable states = new StateListDrawable();
states.addState(new int[] {android.R.attr.state_pressed},getResources().getDrawable(R.color.translucent_red));
states.addState(new int[] {android.R.attr.state_focused},getResources().getDrawable(R.color.white));
states.addState(new int[] { },getResources().getDrawable(R.color.white));
row.setBackgroundDrawable(states);
Ben bu uygulamaya çalışsa ama bu normal add_state fonksiyonun ikinci parametresi olarak çekilebilir kabul ama orada bir renk göndermek istediğiniz .... kimse bana yardım eder misiniz ???
can c'yi kendi renkleri ur xml dosyalarını ayarlayabilirsiniz sadece bir örnektir. ques'i düzenleyin ve d kodunu düzgün bir şekilde yerleştirin – Lavanya
@Rosalie: XML dosyaları kodla düzgün şekilde görüntülenir. Lütfen şimdi tekrar gözden geçirin. –
Teşekkürler çocuklar. Problem çözüldü. Tekrar kendim denedim ve en sonunda bunu başardım. –