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

দ্বিতীয় একটিভিটি তৈরী করুন

ফিগার ১. ইক্লিপসে নতুন একটিভিটি উইজার্ড।

ইক্লিপস ব্যবহার করে নতুন একটিভিটি তৈরী করতে:

  1. টুলবার থেকে New তে ক্লিক করুন

  2. উইন্ডোতে যা দেখা যাবে তার থেকে Android ফোল্ডার ওপেন করুন এবং Android Activity নির্বাচিত করুন। তারপর Next ক্লিক করুন ।

  3. Blank Activity নির্বাচিত করুন এবং Next এ ক্লিক করুন।

  4. একটিভিটির বিস্তারিত পূরন করুন:

  • Project: MyFirstApp

  • Activity Name: DisplayMessageActivity

  • Layout Name: activity_display_message

  • Title: My Message

  • Hierarchial Parent: com.example.myfirstapp.MainActivity

  • Navigation Type: None

Finish এ ক্লিক করুন.

আপনি যদি ভিন্ন আইডিই বা কমান্ড লাইন টুলস ব্যবহার করে থাকেন তাহলে প্রজেক্ট এর src/ ডিরেক্টরীতে DisplayMessageActivity.java নামে একটি নতুন ফাইল তৈরী করুন, যেটা MainActivity.java আসল ফাইলের কাছাকাছি

এই displayMessageActivity.java ফাইলটি ওপেন করুন। আপনি যদি এই একটিভিটি তৈরী করতে ইক্লিপস ব্যবহার করে থাকেন:

* ক্লাস ইতিমধ্যে কাঙ্খিত onCreate()পদ্ধতির একটি বাস্তবায়ন অন্তর্ভুক্ত করেছে

* এখানে onCreateOptionsMenu()পদ্ধতির একটি বাস্তবায়নও অন্তর্ভুক্ত করেছে। কিন্তু এটা এই অ্যাপের জন্য আপনার দরকার হবে না সুতরাং আপনি এটা মুছে ফেলতে পারেন

* এখানে onOptionsItemSelected()পদ্ধতির একটি বাস্তবায়নও অন্তর্ভুক্ত করেছে যা একশন বারের আপ (টঢ়) বিহেভিয়ার এর জন্য আচরন নিয়ন্ত্রণ করে। এটাকে ধরে রাখার এটা একটা উপায়।

কারন ActionBar APIs শুধুমাত্র HONEYCOMB (API level 11)এবং এর চেয়ে উন্নত সংস্করনে আছে, বর্তমান প্লাটফর্ম ভার্সন চেক করার জন্য আপনাকে getActionBar()পদ্ধতির চারপাশে অবশ্যই একটি পরিস্থিতি এ্যাড করতে হবে। lint এরর এড়াতে আপনাকে অবশ্যই onCreate()পদ্ধতিতে @SuppressLint ("NewApi") ট্যাগ এ্যাড করতে হবে। DisplayMessageActivity ক্লাসটি এখন দেখতে এই রকম হওয়া উচিত:

public class DisplayMessageActivity extends Activity {

@SuppressLint("NewApi")
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_display_message);

    // Make sure we're running on Honeycomb or higher to use ActionBar APIs
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
        // Show the Up button in the action bar.
        getActionBar().setDisplayHomeAsUpEnabled(true);
    }
}

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    switch (item.getItemId()) {
    case android.R.id.home:
        NavUtils.navigateUpFromSameTask(this);
        return true;
    }
    return super.onOptionsItemSelected(item);
}
}

আপনি যদি ইক্লিপস ছাড়া অন্য আইডিই ব্যবহার করে থাকেন তাহলে উপরের কোড দ্বারা আপনার DisplayMessageActivity ক্লাস আপডেট করে নিন।

সকল Activity এর সাবক্লাসের onCreate()পদ্ধতিটি অবশ্যই বাস্তবায়ন করা উচিত। সিস্টেম এটাকে কল করে যখন একটিভিটি এর নতুন একটা উদাহরণ তৈরী করবে। এই মেথডে আপনাকে অবশ্যই পদ্ধতি দিয়ে একটিভিটি লেআউট নির্ধারন করতে হবে এবং যেখানে আপনাকে একটিভিটি কম্পোনেন্ট এর জন্য প্রারম্ভিক সেটআপ দিতে হবে।

নোট: আপনি যদি ইক্লিপস ছাড়া অন্য আইডিই ব্যবহার করে থাকেন তাহলে আপনার প্রজেক্টে activity_display_message লেআউট থাকবে না যা setContenView()খুজে থাকে। এটা ঠিক আছে কারন আপনি এই মেথড/পদ্ধতি পরবর্তীতে আপডেট করবেন এবং আপনি ওই লেআউট ব্যবহার করছেন না।