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

ঢগখ এ একশনকে সুনির্দিষ্ট করুন

একশন ওভারফ্লোর মধ্যে সকল একশন বাটন এবং অন্যান্য আইটেম একটি এক্সএমএল menu resource কর্তৃক নির্ধারিত হয়ে থাকে। একশন বারে একশন এ্যাড করতে আপনার প্রজেক্টের res/menu ডিরেক্টরীতে একটা নতুন এক্সএমএল ফাইল তৈরী করুন।

আপনি একশন বারে যে আইটেমগুলো অন্তর্ভুক্ত করতে চান তার প্রতিটার জন্য একটি < item> এলিমেন্ট এ্যাড করুন। উদাহরন:

res/menu/main_activity_actions.xml

<menu xmlns:android="http://schemas.android.com/apk/res/android" >
<!-- Search, should appear as action button -->
<item android:id="@+id/action_search"
      android:icon="@drawable/ic_action_search"
      android:title="@string/action_search"
      android:showAsAction="ifRoom" />
<!-- Settings, should always be in the overflow -->
<item android:id="@+id/action_settings"
      android:title="@string/action_settings"
      android:showAsAction="never" />
</menu>
একশন বার আইকন ডাউনলোড করুন
অ্যান্ড্রয়েড iconography গাইডলাইন কে ভালোভাবে ম্যাচ করতে, আপনার Action Bar Icon Pack কর্তৃক প্রদেয় আইকন ব্যবহার করা উচিত। (http://developer.android.com/design/downloads/index.html#action-bar-icon-pack)

এটা জানায় যে সার্চ একশনকে একশন বাটন হিসাবে দৃশ্যমান হওয়া উচিত, যখন একশন বারে যথেষ্ট জায়গা থাকে, কিন্তু সেটিং একশন সবসময় ওভারফ্লোতে দৃশ্যমান হওয়া উচিত। (বাই ডিফল্ট, সকল একশন ওভারফ্লোতে দৃশ্যমান হয়, কিন্তু প্রতিটা একশনের জন্যে আপনার ডিজাইনের উদ্দেশ্য স্পষ্টত জানানো হচ্ছে ভালো চর্চা )

একটি ইমেজের জন্য icon (আইকন) এট্রিবিউট এর রিসোর্স আইডি দরকার। আপনার প্রজক্টের res/rawable/ ডিরেক্টরীতে @drawable/ নামে একটা বিটম্যাপ ইমেজ সেভ করেছেন। উদাহরণ হিসাবে, "@drawable/ic_action_search" G‡K ic_action_search.png. কে নির্দেশ করে। একই ভাবে Title এট্রিবিউট স্ট্রিং রিসোর্স ব্যবহার করে যা আপনার প্রজেক্টের res/values/ ডিরেক্টরীর একটা এক্সএমএল কর্তৃক নির্ধারিত, যা একটি সহজ ইউজার ইন্টারফেস তৈরী করা অধ্যায়ে আলোচিত হয়েছে।

নোট: যখন আপনার অ্যাপের জন্য আইকন এবং অন্যান্য বিটম্যাপ ইমেজ তৈরী করবেন, তখন এটা গুরুত্বপূর্ণ যে আপনি মাল্টিপল ভার্সন (ভিন্ন ভিন্ন সংস্করণ) প্রদান করবেন যা বিভিন্ন স্ক্রিন ঘনত্ব অনুসারে তৈরী করা। এটা ভিন্ন ভিন্ন স্ক্রিনকে সাপোর্ট করা অনুশীলনীতে বিস্তারিত আলোচনা করা হয়েছে।

আপনার অ্যাপ যদি অ্যান্ড্রয়েড ২.১ এর মতো কম ভার্সনে কাজ করার মতো উপযুক্ত হতে সাপোর্ট লাইব্রেরী ব্যবহার করে থাকে, তাহলে android: নেমস্পেস থেকে showAsAction এট্রিবিউট পাওয়া যাবে না। এর পরিবর্তে এই এট্রিবিউট সাপোর্ট লাইব্রেরী কর্তৃক প্রদত্ত হয় এবং আপনাকে অবশ্যই আপনার নিজস্ব নেমস্পেসকে নির্ধারন করতে হবে এবং ওই নেমস্পেসকে এট্রিবিউট প্রিফিক্স হিসাবে ব্যবহার করতে হবে। (একটি কাস্টম এক্সএমএল নেমস্পেস আপনার অ্যাপ নেমের উপর ভিত্তি করে হওয়া উচিত, কিন্তু এটা যে কোন নাম হতে পারে যেটা আপনি চান এবং শুধুমাত্র ফাইলের সুবিধার মধ্যে প্রবেশযোগ্য যেখানে আপনি এটা ঘোষণা করবেন)। উদাহরন:

res/menu/main_activity_actions.xml

<menu xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:yourapp="http://schemas.android.com/apk/res-auto" >
<!-- Search, should appear as action button -->
<item android:id="@+id/action_search"
      android:icon="@drawable/ic_action_search"
      android:title="@string/action_search"
      yourapp:showAsAction="ifRoom"  />
...
</menu>