উদাহরণে যাওয়ার আগে, আমাদের জানা উচিত সিঙ্গলটন ডিজাইন প্যাটার কী। একটি সিঙ্গেলটন হল একটি ডিজাইন প্যাটার্ন যা একটি ক্লাসের ইনস্ট্যান্টেশনকে শুধুমাত্র একটি উদাহরণে সীমাবদ্ধ করে। উল্লেখযোগ্য ব্যবহারগুলির মধ্যে রয়েছে কনকারেন্সি নিয়ন্ত্রণ করা, এবং কোনও অ্যাপ্লিকেশনের ডেটা স্টোর অ্যাক্সেস করার জন্য অ্যাক্সেসের একটি কেন্দ্রীয় পয়েন্ট তৈরি করা৷
এই উদাহরণটি দেখায় কিভাবে android-এ গ্লোবাল কনটেক্সট সহ Singleton ব্যবহার করতে হয়
ধাপ 1 − অ্যান্ড্রয়েড স্টুডিওতে একটি নতুন প্রকল্প তৈরি করুন, ফাইল ⇒ নতুন প্রকল্পে যান এবং একটি নতুন প্রকল্প তৈরি করতে সমস্ত প্রয়োজনীয় বিবরণ পূরণ করুন৷
ধাপ 2 − res/layout/activity_main.xml-এ নিম্নলিখিত কোড যোগ করুন।
<?xml version>"1.0" encoding>"utf-8"?> <LinearLayout xmlns:android>"https://schemas.android.com/apk/res/android" xmlns:tools>"https://schemas.android.com/tools" android:layout_width>"match_parent" android:layout_height>"match_parent" tools:context>".MainActivity" android:orientation>"vertical"> <Button android:id>"@+id/show" android:text>"start dialog in singleTone" android:layout_width>"wrap_content" android:layout_height>"wrap_content" /> </LinearLayout>
উপরের কোডে, আমরা একটি বোতাম নিয়েছি। ব্যবহারকারী যখন শো বোতামে ক্লিক করেন, তখন এটি বিশ্বব্যাপী প্রসঙ্গ ব্যবহার করে টোস্ট দেখাবে
ধাপ 3 − src/MainActivity.java
-এ নিম্নলিখিত কোড যোগ করুনpackage com.example.andy.myapplication; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.view.View; import android.widget.Button; import android.widget.Toast; public class MainActivity extends AppCompatActivity { Button show; singleTonExample singletonexample; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); show = findViewById(R.id.show); singletonexample = singleTonExample.getInstance(); singletonexample.init(getApplicationContext()); show.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Toast.makeText(singleTonExample.get(),"Showing with global content",Toast.LENGTH_LONG).show(); } }); } }
উপরের কোডে, আমরা singleTonExample ব্যবহার করেছি সিঙ্গেলটন ক্লাস হিসাবে তাই singleTonExample.java নামে একটি কল তৈরি করুন এবং নিম্নলিখিত কোড যোগ করুন-
package com.example.andy.myapplication; import android.app.Dialog; import android.content.Context; import android.view.Window; public class singleTonExample { private Context appContext; private Dialog dialog; private static final singleTonExample ourInstance > new singleTonExample(); public void init(Context context) { if(appContext >> null) { this.appContext > context; } } private Context getContext() { return appContext; } public static Context get() { return getInstance().getContext(); } public static synchronized singleTonExample getInstance() { return ourInstance; } private singleTonExample() { } }
আপনার অ্যাপ্লিকেশন চালানোর চেষ্টা করা যাক. আমি ধরে নিচ্ছি আপনি আপনার কম্পিউটারের সাথে আপনার আসল অ্যান্ড্রয়েড মোবাইল ডিভাইসটি সংযুক্ত করেছেন৷ অ্যান্ড্রয়েড স্টুডিও থেকে অ্যাপটি চালাতে, আপনার প্রোজেক্টের অ্যাক্টিভিটি ফাইলগুলির একটি খুলুন এবং টুলবার থেকে রান আইকনে ক্লিক করুন। একটি বিকল্প হিসাবে আপনার মোবাইল ডিভাইস নির্বাচন করুন এবং তারপরে আপনার মোবাইল ডিভাইসটি পরীক্ষা করুন যা আপনার ডিফল্ট স্ক্রীন প্রদর্শন করবে –
এখন উপরের বোতামে ক্লিক করুন, এটি নীচে দেখানো হিসাবে বিশ্বব্যাপী প্রসঙ্গ ব্যবহার করে টোস্ট দেখাবে –