نقل قول:کد بالا باعث می شود که selector در پشت item نمایش داده شود، اما تضمینی نیست که شما آن را ببینید، زیرا ممکن است که لایه بندی ها را به گونه ای ساخته باشید که اصلا پس زمینه item قابل مشاهده نباشد.درست متوجه نشدم باید چکار کنم که مشکل رو متوجه بشم.
بنابراین اگر درست عمل نکرد، خود بنده در این موارد، برای اینکه لایه بندی ها گیجم نکنند، برای لایه های مختلف، به طور موقت، رنگ های پس زمینه ای در فایل xml تعیین می کنم. سپس بر اساس آن رنگ ها، به طور دقیق محدوده لایه بندی ها قابل تشخیص است و بر اساس آنها، متوجه می شوم که مشکل از چیست و هم پوشانی های لایه ها در چه حدی است. بعد هم که همه چیز درست شد، آن رنگ های پس زمینه را به حالت اولیه بر می گردانم (حذف می کنم).
ببینید من در حالت عادی نمایش لیست ویو، از 2 رنگ برای آیتمها استفاده می کنم. یعنی در متد getview بر اساس پارامتر position ، اینکار رو انجام میدم. با این کد:
کد پیاچپی:
if (position%2==0){
row.setBackgroundColor(Color.parseColor("#cadff7"));
}
else{
row.setBackgroundColor(Color.parseColor("#ebebeb"));
جالب اینه که قبل از اینکه رنگ پس زمینه آیتمها رو با کد بالا تغییر بدم، بصورت اتوماتیک وقتی روی آیتم کلیک می کردم، رنگش عوض میشد، ولی از وقتی که این کد رو گذاشتم دیگه عمل نمی کنه و باید از selector و این داستانها استفاده کنم.