আসসালামু আলাইকুম আশা করি সবাই ভাল আছেন। আজকে আমরা আলোচনা করব এন্ড্রয়েড ডেভেলপমেন্ট এর গুরত্তপূর্ণ একটি অংশ Thread সম্পর্কে।
Thread ক্লাস এন্ড্রয়েড ডেভেলপমেন্ট ও গেম ডেভেলপমেন্ট এ অনেক ব্যবহৃত হয়। Thread হল একই প্রোগ্রামের বিভিন্ন অংশ অর্থাৎ প্রসেস বা সাবপ্রোগ্রাম। Thread এরপ একটি ক্লাস আকারে বাস্তবায়ন করা হয় যেখানে run() নামে একটি মেথড অবশ্যই থাকে। run() মেথড এর সাধারণ ফরম্যাট হল এরকম:
Public void run()
{
}
আজকে আমরা sleep() মেথডের মধ্যে Thread Exceptions এর ব্যবহার দেখব। Exception Handling মাধ্যমে sleep() মেথডের ব্যবহার হবে এরকম
package com.art.android6; import android.os.Bundle; import android.app.Activity; import android.content.Intent; import android.view.Menu; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Thread nthread = new Thread(){ @Override public void run() { try { sleep(5000); } catch (InterruptedException e) { e.printStackTrace(); } finally { Intent nIntent = new Intent("com.art.android6.activity_second"); startActivity(nIntent); } } }; nthread.start(); } @Override public boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R.menu.main, menu); return true; } }
প্রথমে onCreate মেথড এ Thread nThread = new Thread() { } এর মধ্যে
@Override
Public void run()
এভাবে ডিক্লিয়ার করে দিতে হবে। তারপর try , catch ব্লকে এ try এর মধ্যে sleep(time) এভাবে ডিক্লিয়ার করে দিতে হবে। তারপর catch এর মধ্যে exception handling এর জন্য e.printStackTrace(); এভাবে ডিক্লিয়ার করে দিতে হবে। এরপর finally এর মধ্যে Intent ডিক্লিয়ার করে এবং এর মধ্যে SecondActivity এর layout এর অ্যাড্রেস ডিক্লিয়ার করে startActivity দ্বারা Intent টি চালু করে দিতে হবে। তারপর Thread টি চালু করে দেয়ার জন্য nthread.start(); এভাবে ডিক্লিয়ার করে দিতে হবে।
এখন আমাদের MainActivity টি আলাদাভাবে চেনার জন্য activity_main এর Background টি পরিবর্তন করে দেয়। activity_main এর background টিপরিবর্তন করার জন্য প্রোজেক্ট এর res ফোল্ডার এ drawable-hdpi এ background ইমেজ টি কপি পেস্ট করে দেয়। তারপর Background টিতে ইমেজ নিয়ে আসার জন্য activity_main এ LinearLayout এ android:background="@drawable/background" এভাবে ডিক্লিয়ার করে দিতে হবে।
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:gravity="center" android:background="@drawable/background" > <Button android:id="@+id/button1" android:layout_width="120dp" android:layout_height="wrap_content" android:text="@string/button1" android:background="@android:color/background_light" /> </LinearLayout>
তারপর MainActivity.java তে প্রোগ্রামটি রান করলে 5000=5sec পরে MainActivity থেকে SecondActivity প্রদর্শন করবে।
আজকের প্রোজেক্ট এর সোর্স কোড এখান থেকে ডাওনলোড করে নিন।
এন্ড্রয়েড ডেভেলপমেন্ট এর সর্বশেষ পর্ব সম্পর্কে নোটিফিকেশান পেতে লাইক করুন ফেসবুকের এই পেইজে এ।
আমি নাঈম হায়দার ঋদ্ধি। বিশ্বের সর্ববৃহৎ বিজ্ঞান ও প্রযুক্তির সৌশল নেটওয়ার্ক - টেকটিউনস এ আমি 11 বছর 10 মাস যাবৎ যুক্ত আছি। টেকটিউনস আমি এ পর্যন্ত 76 টি টিউন ও 44 টি টিউমেন্ট করেছি। টেকটিউনসে আমার 6 ফলোয়ার আছে এবং আমি টেকটিউনসে 0 টিউনারকে ফলো করি।
Computer ও Programming পছন্দ, আমার youtube channel https://www.youtube.com/channel/UCYKbAf2kXLgKav30hd3zDPQ . আমার ফেসবুক প্রোফাইল https://www.facebook.com/nayeem.riddhi
থ্যাঙ্কস