আমার কিছু টুকরো রয়েছে যা নিয়মিত ডায়ালগ দেখানো দরকার। এই সংলাপগুলিতে ব্যবহারকারী একটি হ্যাঁ / না উত্তর চয়ন করতে পারেন এবং তারপরে খণ্ডটি সেই অনুযায়ী আচরণ করা উচিত।
এখন, ক্লাসটির ওভাররাইড করার Fragment
কোনও onCreateDialog()
পদ্ধতি নেই, সুতরাং আমি অনুমান করি যে আমাকে সংলাপের বাইরে ডায়ালগগুলি প্রয়োগ করতে হবে Activity
। এটি ঠিক আছে, তবে তারপরে Activity
বেছে নেওয়া উত্তরটি খণ্ড খণ্ডকে কোনওভাবে ফেরত দেওয়ার প্রয়োজন। আমি অবশ্যই এখানে কলব্যাক প্যাটার্নটি ব্যবহার করতে পারি, তাই খণ্ডটি Activity
শ্রোতা শ্রেণীর সাথে নিজেই নিবন্ধিত হয় এবং ক্রিয়াকলাপটি উত্তরটি বা সেই জাতীয় কিছুতে ফিরিয়ে দেয়।
তবে এটি কোনও খণ্ডে "সাধারণ" হ্যাঁ-না ডায়ালগ প্রদর্শিত হিসাবে একটি সাধারণ কাজের জন্য এটি বেশ বড় জগাখিচুড়ি বলে মনে হচ্ছে। এছাড়াও, এইভাবে আমার Fragment
কম স্বনির্ভর হবে।
এটি করার কিছু ক্লিনার উপায় আছে কি?
সম্পাদনা:
এই প্রশ্নের উত্তরটি কীভাবে ডায়ালগফ্রেগমেন্টগুলি কীভাবে খণ্ডগুলি থেকে ডায়ালগ প্রদর্শন করতে হবে তা বিশদভাবে ব্যাখ্যা করে না। সুতরাং আফাইক, যাওয়ার উপায় হ'ল:
- একটি খণ্ড প্রদর্শন করুন।
- যখন প্রয়োজন হয়, একটি ডায়ালগফ্র্যাগমেন্ট ইনস্ট্যান্ট করুন।
- সহ এই ডায়ালগফ্রেগমেন্টের লক্ষ্য হিসাবে মূল খণ্ডটি সেট করুন
.setTargetFragment()
। - মূল টুকরা থেকে .show () দিয়ে ডায়ালগফ্রেগমেন্টটি দেখান।
- যখন ব্যবহারকারী এই ডায়ালগফ্রেগমেন্টে কিছু বিকল্প চয়ন করেন, তখন এই নির্বাচনটি সম্পর্কে মূল অংশটিকে অবহিত করুন (যেমন ব্যবহারকারী 'হ্যাঁ' ক্লিক করেছেন), আপনি .getTarget () সহ মূল খণ্ডটির রেফারেন্স পেতে পারেন।
- ডায়ালগফ্রেগমেন্টটি খারিজ করুন।