বাংলায় অ্যান্ড্রয়েড সহায়িকা - Bangla Android Guide

ট্যাব ইন্ডিকেটর কাস্টমাইজ করা

Navigation tabs এর জন্য ব্যবহার করা ইন্ডিকেটর পরিবর্তন করতে, একটা একটিভিটি থিম তৈরী করুন যা actionBarTabStyle প্রপার্টিকে ওভাররাইড করে। এই প্রপারটি অন্য স্টাইল রিসোর্স কে নির্দেশ করে যার মধ্যে আপনি background প্রপারটিকে ওভাররাইড করতে পারবেন যাতে একটি স্টেট-লিস্ট ড্রয়েবল নির্দিষ্ট করা উচিত।

নোট: একটি স্টেট-লিস্ট ড্রয়েবল গুরুত্বপূর্ণ যাতে বর্তমানে ট্যাব ব্যাকগ্রাউন্ড দিয়ে এর স্টেট সিলেক্ট করে যা অন্যান্য ট্যাবের চেয়ে ভিন্ন। একটি ড্রয়েবল রিসোর্স যা মাল্টিপল বাটন স্টেট ধারন করে তা কীভাবে তৈরী করা যায় সে সম্পর্কে জানতে পড়ুন State List (http://developer.android.com/guide/topics/resources/drawable-resource.html#StateList) ডকুমেন্টেশন ।

উদাহরন এর জন্য, এখানে একটি স্টেট-লিস্ট ড্রয়েবল দেয়া হচ্ছে, যা একটি একশন বার ট্যাবের কতিপয় বিভিন্ন স্টেটস এর জন্য সুনির্দিষ্ট ব্যাকগ্রাউন্ড ইমেজকে ডিক্লেয়ার করে:

res/drawable/actionbar_tab_indicator.xml

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<!-- Non focused states -->
<item android:state_focused="false" android:state_selected="false"
      android:state_pressed="false"
      android:drawable="@drawable/tab_unselected" />
<item android:state_focused="false" android:state_selected="true"
      android:state_pressed="false"
      android:drawable="@drawable/tab_selected" />

<!-- Focused states (such as when focused with a d-pad or mouse hover) -->
    <item android:state_focused="true" android:state_selected="false"
      android:state_pressed="false"
      android:drawable="@drawable/tab_unselected_focused" />
<item android:state_focused="true" android:state_selected="true"
      android:state_pressed="false"
      android:drawable="@drawable/tab_selected_focused" />


<!-- STATES WHEN BUTTON IS PRESSED -->

<!-- Non focused states -->
<item android:state_focused="false" android:state_selected="false"
      android:state_pressed="true"
      android:drawable="@drawable/tab_unselected_pressed" />
<item android:state_focused="false" android:state_selected="true"
    android:state_pressed="true"
    android:drawable="@drawable/tab_selected_pressed" />

<!-- Focused states (such as when focused with a d-pad or mouse hover) -->
    <item android:state_focused="true" android:state_selected="false"
      android:state_pressed="true"
      android:drawable="@drawable/tab_unselected_pressed" />
    <item android:state_focused="true" android:state_selected="true"
      android:state_pressed="true"
      android:drawable="@drawable/tab_selected_pressed" />
</selector>