একটি অ্যাকশন কনফিগার করুন

একটি অ্যাকশন , অ্যাপ চালু করতে বা নির্দিষ্ট সিস্টেম ইভেন্টের প্রতিক্রিয়ায় UI-এর আচরণ সমন্বয় করতে, সিস্টেম UI এবং অন্যান্য সিস্টেম অ্যাপের মধ্যে স্কেলেবল UI ইভেন্টগুলো আদান-প্রদান করে।

অ্যাকশন হলো একটি কনফিগারেশন কাঠামো, যা কোনো নির্দিষ্ট UI প্যানেলের সংযোগ থেকে স্বাধীন। একটি অ্যাকশনে একটি প্রয়োজনীয় ইনটেন্ট থাকে, যা কোনো ইভেন্ট দ্বারা ট্রিগার হলে ডিসপ্যাচ করা হয়।

ইভেন্টের প্রতিক্রিয়া হিসাবে ইনটেন্ট সম্প্রচার করতে আপনি অ্যাকশন ব্যবহার করেন।

স্কেলেবল UI আগত ইভেন্টের উপর ভিত্তি করে অ্যাকশন অবজেক্ট পরিচালনা ও প্রেরণ করে। যখন কোনো ইভেন্ট হ্যান্ডেল করা হয়, তখন স্কেলেবল UI যাচাই করে যে ইভেন্টটি দ্বারা অ্যাকশনের ট্রিগার শর্ত পূরণ হয়েছে কিনা এবং অ্যাকশনটির সাথে যুক্ত ইন্টেন্টসহ একটি অর্ডারড ব্রডকাস্ট পাঠায়। অ্যাকশনসমূহ:

  • প্যানেলের সংজ্ঞা এবং অ্যাপ চালু করার লজিককে পৃথক করুন: অ্যাকশনগুলো UI প্যানেলের স্থির সংজ্ঞাকে সেই ডাইনামিক লজিক থেকে আলাদা করে, যা সেগুলোর মধ্যে অ্যাপ চালু হওয়াকে নিয়ন্ত্রণ করে। এর ফলে কখন অ্যাপ চালু করতে হবে, তার উপর আপনি সম্পূর্ণ নিয়ন্ত্রণ পান।
    প্যানেলের অবস্থা নির্বিশেষে অভিপ্রায়সমূহ।

  • কাস্টম ডেভেলপমেন্ট হ্রাস করুন: অ্যাকশন আপনাকে অ্যাপ চালু করার জন্য একটি কনফিগারযোগ্য এবং কোড-মুক্ত সমাধান প্রদান করে।

  • প্যানেল প্রারম্ভিককরণকে সুবিন্যস্ত করুন: অ্যাকশনগুলো সাধারণ সিস্টেম ইভেন্টের প্রতিক্রিয়ায় অ্যাপ চালু করার জন্য প্রমিত লজিক প্রদান করে, যার মধ্যে নেভিগেশন শুরু করাও অন্তর্ভুক্ত।

  • লেজি লোডিংয়ের মাধ্যমে সিস্টেমের পারফরম্যান্স উন্নত করুন: অ্যাকশন অ্যাপগুলোকে লেজি লোড করতে সাহায্য করে, যা সিস্টেমের রেসপন্সিভনেস এবং সার্বিক পারফরম্যান্স বাড়াতে পারে। এছাড়াও, বুট হওয়ার সময় কোন অ্যাপগুলো চালু হবে, সে বিষয়ে অ্যাকশন আরও বেশি নিয়ন্ত্রণ প্রদান করে।

  • ডাইনামিক UI-এর অভিযোজন সহজ করুন: ট্রিগার, যা অ্যাকশনের একটি অংশ, আপনাকে মূল সিস্টেম UI অ্যাপের বাইরে থেকে স্কেলেবল UI স্টেটগুলোর সাথে যোগাযোগ ও সমন্বয় করতে দেয়। এর ফলে, আপনি ডাইনামিক UI অভিযোজন পান।

XML অ্যাট্রিবিউট

অ্যাকশনগুলো সাধারণত একটি XML ফাইলে বাহ্যিকভাবে সংজ্ঞায়িত করা হয় এবং স্কেলেবল UI-তে লোড করা হয়। সম্পূর্ণ অ্যাকশন কনফিগারেশনটি xml/scalable_ui_actions.xml ফাইলে স্থায়ীভাবে সংরক্ষিত থাকে। প্রতিটি সিস্টেম ইনস্ট্যান্সের জন্য এই ধরনের কেবল একটি ফাইল অনুমোদিত। অন্য যেকোনো সংজ্ঞা উপেক্ষা করা হয়।

বৈশিষ্ট্য বর্ণনা
<Action> <Actions> ট্যাগটি হলো একাধিক কাজের তালিকার জন্য শীর্ষ-স্তরের ধারক। প্রতিটি <Action> সংজ্ঞায় বাধ্যতামূলক এবং ঐচ্ছিক প্রোপার্টি থাকতে পারে।
  • (বাধ্যতামূলক) intent সেই ইন্টেন্টের URI স্ট্রিং নির্ধারণ করে, যা অ্যাকশনটি সক্রিয় হলে প্রেরণ করা হবে।
  • একটি Action ইভেন্টের আকারে একাধিক ট্রিগার পয়েন্ট থাকতে পারে। কোনো অ্যাকশনকে ইন্টেন্ট ডিসপ্যাচ করতে হলে, সেটিকে অবশ্যই ইভেন্টের বিবরণগুলোর অন্তত একটির সাথে মেলে এমন একটি ইভেন্ট গ্রহণ করতে হবে।

XML চাইল্ড এলিমেন্ট

বৈশিষ্ট্য বর্ণনা
<Event> যে ইভেন্টটি এই অ্যাকশনটি ট্রিগার করতে পারে, তার বৈশিষ্ট্যগুলো বর্ণনা করে। প্রতিটি অ্যাকশনের জন্য একাধিক চাইল্ড ইভেন্ট নির্দিষ্ট করা যেতে পারে। যখন এর অন্তত একটি ইভেন্ট মিলে যায়, তখন অ্যাকশনটি ট্রিগার হয়।
  • (বাধ্যতামূলক) id : এই ট্রিগারটি সক্রিয় করার জন্য Scalable UI ইভেন্টের অনন্য শনাক্তকারী।
  • (ঐচ্ছিক) panelID : এই ইভেন্টের সাথে যুক্ত প্যানেলের অনন্য শনাক্তকারী।
  • (ঐচ্ছিক) componentName এই ইভেন্টের সাথে যুক্ত কম্পোনেন্টের নাম।
  • (ঐচ্ছিক) packageName এই ইভেন্টের সাথে যুক্ত প্যাকেজের নাম।

ইভেন্ট মেলানো

অ্যাকশনগুলো ট্রানজিশনের অনুরূপ একটি ইভেন্ট-ম্যাচিং প্রক্রিয়া ব্যবহার করে।