টেমপ্লেট সীমাবদ্ধতা

হোস্ট একটি নির্দিষ্ট কাজের জন্য প্রদর্শনের জন্য টেমপ্লেটের সংখ্যা সর্বাধিক পাঁচটিতে সীমাবদ্ধ করে, যার মধ্যে শেষ টেমপ্লেটটি নিম্নলিখিত ধরণের একটি হতে হবে:

মনে রাখবেন যে এই সীমাটি টেমপ্লেটের সংখ্যার ক্ষেত্রে প্রযোজ্য, স্ট্যাকের Screen ইনস্ট্যান্সের সংখ্যার ক্ষেত্রে নয়। উদাহরণস্বরূপ, যদি কোনও অ্যাপ স্ক্রিন A-তে থাকাকালীন দুটি টেমপ্লেট পাঠায় এবং তারপরে স্ক্রিন B-তে চাপ দেয়, তাহলে এটি এখন আরও তিনটি টেমপ্লেট পাঠাতে পারে।

বিকল্পভাবে, যদি প্রতিটি স্ক্রিন একটি একক টেমপ্লেট পাঠানোর জন্য গঠন করা হয়, তাহলে অ্যাপটি ScreenManager স্ট্যাকের উপর পাঁচটি স্ক্রিন ইনস্ট্যান্স পুশ করতে পারে।

এই বিধিনিষেধগুলির কিছু বিশেষ ক্ষেত্র রয়েছে: টেমপ্লেট রিফ্রেশ এবং ব্যাক অ্যান্ড রিসেট অপারেশন।

টেমপ্লেট রিফ্রেশ করা হচ্ছে

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

পিছনের অপারেশন

কোনও টাস্কের মধ্যে সাব-ফ্লো সক্ষম করার জন্য, হোস্ট ScreenManager স্ট্যাক থেকে কোনও অ্যাপ কখন Screen পপ করছে তা সনাক্ত করে এবং অ্যাপটি কতগুলি টেমপ্লেট পিছনে যাচ্ছে তার উপর ভিত্তি করে অবশিষ্ট কোটা আপডেট করে।

উদাহরণস্বরূপ, যদি অ্যাপটি স্ক্রিন A-তে থাকাকালীন দুটি টেমপ্লেট পাঠায়, তারপর স্ক্রিন B-তে চাপ দিয়ে আরও দুটি টেমপ্লেট পাঠায়, তাহলে অ্যাপটির একটি কোটা অবশিষ্ট থাকে। যদি অ্যাপটি স্ক্রিন A-তে ফিরে আসে, তাহলে হোস্ট কোটাটি তিনটিতে রিসেট করে, কারণ অ্যাপটি দুটি টেমপ্লেট দ্বারা পিছিয়ে গেছে।

মনে রাখবেন, যখন কোনও স্ক্রিনে ফিরে আসবে, তখন একটি অ্যাপকে অবশ্যই সেই স্ক্রিনে পাঠানো টেমপ্লেটের মতো একই ধরণের টেমপ্লেট পাঠাতে হবে। অন্য কোনও ধরণের টেমপ্লেট পাঠানোর ফলে ত্রুটি দেখা দেয়। তবে, যতক্ষণ পর্যন্ত ব্যাক অপারেশনের সময় টাইপটি একই থাকে, ততক্ষণ পর্যন্ত একটি অ্যাপ কোটা প্রভাবিত না করেই টেমপ্লেটের বিষয়বস্তু অবাধে পরিবর্তন করতে পারে।

ক্রিয়াকলাপ রিসেট করুন

কিছু টেমপ্লেটের বিশেষ অর্থবোধকতা থাকে যা কোনও কাজের সমাপ্তি নির্দেশ করে। উদাহরণস্বরূপ, NavigationTemplate হল এমন একটি দৃশ্য যা স্ক্রিনে থাকবে এবং ব্যবহারকারীর জন্য নতুন ধাপে ধাপে নির্দেশাবলীর সাথে রিফ্রেশ হবে বলে আশা করা হচ্ছে।

যখন কোনও কাজ এই টেমপ্লেটগুলির মধ্যে একটিতে পৌঁছায়, তখন হোস্ট টেমপ্লেট কোটা রিসেট করে, সেই টেমপ্লেটটিকে একটি নতুন কাজের প্রথম ধাপ হিসেবে বিবেচনা করে। এটি অ্যাপটিকে একটি নতুন কাজ শুরু করতে দেয়। আরও জানতে, হোস্টে কোন টেমপ্লেট রিসেট ট্রিগার করে তা জানতে পৃথক টেমপ্লেটের ডকুমেন্টেশন দেখুন।

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