আপডেট: সর্বশেষ অ্যাকশনবার (শিরোনাম) প্যাটার্ন:
এফওয়াইআই, অ্যাকশনবারটি এপিআই লেভেল ১১-এ প্রবর্তিত হয়েছিল অ্যাকশনবারটি ক্রিয়াকলাপের শীর্ষে একটি উইন্ডো বৈশিষ্ট্য যা ক্রিয়াকলাপের শিরোনাম , নেভিগেশন মোড এবং অনুসন্ধানের মতো অন্যান্য ইন্টারেক্টিভ আইটেমগুলি প্রদর্শন করতে পারে ।
আমি শিরোনাম বারটি কাস্টমাইজ করা এবং অ্যাপ্লিকেশনটির মাধ্যমে এটি সামঞ্জস্যপূর্ণ করার বিষয়ে ঠিক মনে করি। তাই আমি আগের দিনগুলির সাথে তুলনা করতে পারি এবং অ্যাকশনবার ব্যবহারের কিছু সুবিধার তালিকাবদ্ধ করতে পারি:
- এটি আপনার ব্যবহারকারীদের অ্যাপ্লিকেশন জুড়ে একটি পরিচিত ইন্টারফেস প্রস্তাব করে যা সিস্টেমটি বিভিন্ন স্ক্রীন কনফিগারেশনের জন্য কৃপণভাবে গ্রহণ করে।
- ক্রিয়াকলাপ শিরোনাম, আইকন এবং নেভিগেশন মোডগুলি প্রদর্শনের জন্য বিকাশকারীদের খুব বেশি কোড লেখার প্রয়োজন নেই কারণ অ্যাকশনবার ইতিমধ্যে শীর্ষ স্তরের বিমূর্ততা সহ প্রস্তুত।
উদাহরণ স্বরূপ:
=> সাধারণ উপায়,
getActionBar().setTitle("Hello world App");
getSupportActionBar().setTitle("Hello world App"); // provide compatibility to all the versions
=> কাস্টমাইজিং অ্যাকশন বার,
উদাহরণ স্বরূপ:
@Override
public void setActionBar(String heading) {
// TODO Auto-generated method stub
com.actionbarsherlock.app.ActionBar actionBar = getSupportActionBar();
actionBar.setHomeButtonEnabled(true);
actionBar.setDisplayHomeAsUpEnabled(false);
actionBar.setDisplayShowHomeEnabled(false);
actionBar.setBackgroundDrawable(new ColorDrawable(getResources().getColor(R.color.title_bar_gray)));
actionBar.setTitle(heading);
actionBar.show();
}
অ্যাকশন বার স্টাইলিং:
অ্যাকশনবার আপনাকে প্রাথমিক এবং পরিচিত চেহারা, নেভিগেশন মোড এবং সম্পাদন করার জন্য অন্যান্য দ্রুত ক্রিয়া সরবরাহ করে। তবে এর অর্থ এই নয় যে এটি প্রতিটি অ্যাপ্লিকেশনটিতে একই দেখাচ্ছে। আপনি আপনার ইউআই এবং ডিজাইনের প্রয়োজনীয়তা অনুসারে এটি কাস্টমাইজ করতে পারেন। আপনাকে কেবল শৈলী এবং থিম সংজ্ঞা দিতে এবং লিখতে হবে।
আরও পড়ুন এখানে: স্টিলিং অ্যাকশন বার
এবং যদি আপনি অ্যাকশনবারের জন্য শৈলী তৈরি করতে চান তবে এই স্টাইল জেনারেটর সরঞ্জামটি আপনাকে সহায়তা করতে পারে।
================================================== ===============================
পুরানো: আগের দিনগুলি:
=> সাধারণ উপায়,
আপনি প্রতিটি স্ক্রিনের (যেমন ক্রিয়াকলাপ) সেট করে তাদের শিরোনাম পরিবর্তন করতে পারেন Android:label
<activity android:name=".Hello_World"
android:label="This is the Hello World Application">
</activity>
=> কাস্টম - শিরোনাম - বার
তবে আপনি যদি নিজের উপায়ে শিরোনাম-বারটি কাস্টমাইজ করতে চান Want to put Image icon and custom-text
, তবে নীচের কোডটি আমার পক্ষে কাজ করে:
main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"/>
titlebar.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="400dp"
android:layout_height="fill_parent"
android:orientation="horizontal">
<ImageView android:id="@+id/ImageView01"
android:layout_width="57dp"
android:layout_height="wrap_content"
android:background="@drawable/icon1"/>
<TextView
android:id="@+id/myTitle"
android:text="This is my new title"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:textColor="@color/titletextcolor"
/>
</LinearLayout>
TitleBar.java
public class TitleBar extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
final boolean customTitleSupported =
requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
setContentView(R.layout.main);
if (customTitleSupported) {
getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE,
R.layout.titlebar);
}
final TextView myTitleText = (TextView) findViewById(R.id.myTitle);
if (myTitleText != null) {
myTitleText.setText("NEW TITLE");
// user can also set color using "Color" and then
// "Color value constant"
// myTitleText.setBackgroundColor(Color.GREEN);
}
}
}
strings.xml
স্ট্রিং.এক্সএমএল ফাইলটি values
ফোল্ডারের নীচে সংজ্ঞায়িত করা হয়েছে ।
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="hello">Hello World, Set_Text_TitleBar!</string>
<string name="app_name">Set_Text_TitleBar</string>
<color name="titlebackgroundcolor">#3232CD</color>
<color name="titletextcolor">#FFFF00</color>
</resources>