তালিকার নির্বাচকের মাধ্যমে প্রতিটি লিস্টভিউ আইটেমটিতে একটি কাস্টম পটভূমি প্রয়োগ করা সম্ভব?
ডিফল্ট নির্বাচনকারী ক্ষেত্রে ক্ষেত্রে সুনির্দিষ্ট @android:color/transparent
করে state_focused="false"
, তবে কিছু কাস্টম ড্রয়যোগ্যতে এটি পরিবর্তন করা বাছাই করা আইটেমগুলিকে প্রভাবিত করে না। রোমেন গাই এই উত্তরে প্রস্তাবিত বলে মনে হচ্ছে এটি সম্ভব।
আমি বর্তমানে প্রতিটি দৃশ্যে একটি কাস্টম ব্যাকগ্রাউন্ড ব্যবহার করে এবং আইটেমটি নির্বাচিত / ফোকাসড / যা কিছু নির্বাচক দেখানো হয়েছে তা লুকিয়ে রেখে একই প্রভাবটি অর্জন করছি, তবে এটি সমস্ত জায়গায় এক জায়গায় সংজ্ঞায়িত করা আরও মার্জিত হবে।
রেফারেন্সের জন্য, এটি এই নির্বাচক যা আমি এই কাজটি করার চেষ্টা করে যাচ্ছি:
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_focused="false"
android:drawable="@drawable/list_item_gradient" />
<!-- Even though these two point to the same resource, have two states so the drawable will invalidate itself when coming out of pressed state. -->
<item android:state_focused="true" android:state_enabled="false"
android:state_pressed="true"
android:drawable="@drawable/list_selector_background_disabled" />
<item android:state_focused="true" android:state_enabled="false"
android:drawable="@drawable/list_selector_background_disabled" />
<item android:state_focused="true" android:state_pressed="true"
android:drawable="@drawable/list_selector_background_transition" />
<item android:state_focused="false" android:state_pressed="true"
android:drawable="@drawable/list_selector_background_transition" />
<item android:state_focused="true"
android:drawable="@drawable/list_selector_background_focus" />
</selector>
এবং এইভাবেই আমি নির্বাচককে সেট করছি:
<ListView
android:id="@android:id/list"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:listSelector="@drawable/list_selector_background" />
কোনো সাহায্যের জন্য আগাম ধন্যবাদ!