আজকের পর্বে আমরা SurfaceView ক্লাস এর সেটিংস্ সম্পর্কে বিস্তারিত আলোচনা করব।গত পর্বে আমরা Ourview ক্লাসকে extend করেছিলাম সাব ক্লাস SurfaceView দ্বারা এবং implements করেছিলাম Runnable দ্বারা। এবং এর body যে উপাদানগুলি ছিল তা হচ্ছে Constructor ,run(), Pause(), এবং Resume() মেথডসমূহ। এই পর্বে আমরা SurfaceView ক্লাস এর সেটিংস্ নিয়ে আলোচনা করব।
প্রথমেই আমরা Thread এর জন্য একটি variable, ourThread ডিক্লিয়ার করে দিব।এবং ourThread এর জন্য initialvalue,ourThread = null সেট করে দিব। তারপর আমাদের SurfaceView ক্লাস এর জন্য প্রয়োজন পরবে SurfaceHolder । SurfaceHolder হচ্ছে একটি Abstract interface যা Surface কে display করার জন্য ব্যবহ্রত হয় এবং Surface কে Size, format, মনিটর পরিবর্তনের জন্য ব্যবহার করা হয়। SurfaceHolder এর জন্য holder variable কে ডিক্লিয়ার করে দেয়। Boolean value হিসেবে value1 ডিক্লিয়ার করে দেই এবং এর মান initially false করে দেই।
package com.nayeem.android14; import android.content.Context; import android.view.SurfaceHolder; import android.view.SurfaceView; public class Ourview extends SurfaceView implements Runnable { Thread ourThread= null; SurfaceHolder holder; boolean value1 = false; public Ourview(Context context) { super(context); holder = getHolder(); } @Override public void run() { if (value1== true) { } } public void pause() { value1= false; while(true) { try { ourThread.join(); } catch (InterruptedException e) { e.printStackTrace(); } break; } ourThread = null; } public void Resume() { value1= true; ourThread = new Thread(this); ourThread.start(); } }
তারপর holder variable কে getholder() দ্বারা এভাবে constructor এর মধ্যে সেটআপ করে দেই।এভাবে pause মেথড এবং Resume মেথডেও প্রয়োজনীয় উপাদানগুলি সেটআপ করে দেই। pause মেথডে value1 initially false করে দেই।কন্ডিশন হিসেবে যদি true পায় তাহলে stop করার জন্য OurThread.join() এভাবে try/catch এর try এর মধ্যে ডিক্লিয়ার করে দেই। তেমনিভাবে Resume মেথডেও value1 কে true করে Thread কে start করে দেয়ার জন্য OurThread.start() এভাবে ডিক্লিয়ার করে দেই।
এইছিল আজকের SurfaceView ক্লাস এর সেটিংস্ সম্পর্কে আলোচনা।
এন্ড্রয়েড ডেভেলপমেন্ট এর সর্বশেষ পর্ব সম্পর্কে নোটিফিকেশান পেতে লাইক করুন ফেসবুকের এই পেইজে এ।
আমি নাঈম হায়দার ঋদ্ধি। বিশ্বের সর্ববৃহৎ বিজ্ঞান ও প্রযুক্তির সৌশল নেটওয়ার্ক - টেকটিউনস এ আমি 12 বছর 1 মাস যাবৎ যুক্ত আছি। টেকটিউনস আমি এ পর্যন্ত 76 টি টিউন ও 44 টি টিউমেন্ট করেছি। টেকটিউনসে আমার 6 ফলোয়ার আছে এবং আমি টেকটিউনসে 0 টিউনারকে ফলো করি।
Computer ও Programming পছন্দ, আমার youtube channel https://www.youtube.com/channel/UCYKbAf2kXLgKav30hd3zDPQ . আমার ফেসবুক প্রোফাইল https://www.facebook.com/nayeem.riddhi