سؤال

لدي تطبيق حيث إنه مجرد مؤقت مع مجموعة كاملة من الأساليب الخاصة في النشاط الرئيسي. هذا يعمل بشكل رائع مع عدم وجود مشاكل. الآن، أن أعمل، أحاول إدراجها في تطبيق أكثر تعقيدا بكثير حيث سأقوم بإدراج المؤقت في العديد من الأماكن عبر الأزارات.

يجب أن أدرج جميع أساليبي الخاصة في نشاط شظي؟ أي:

giveacodicetagpre.

أو يجب أن أدرجها في الرئيسية؟

أنا أسأل لأنني جربت كلا الاتجاهين، وقد أعطتني طريقة نشاط الشظية أخطاء في جافا، ولكن وضعها في أخطاء رئيسي أثناء وقت التشغيل. في الأساس، لدي توقيت يعمل بشكل رائع كأداة مستقل، لكنني أحاول تحويله إلى جزء، حتى أتمكن من توصيله في أماكن متعددة في تطبيقي.

أمثلة على "الأساليب الخاصة": أنا أعتبر طريقة عرض في التخطيط وتحديثه وفقا للأرقام الجديدة المدخلة على الموقت. تتطلب هذه الطرق الرأي المزعج قبل أن يتم استخدامها.

ملاحظة: الأخطاء في وقت التشغيل أختبرها مخصبات nullpointrex.

هل كانت مفيدة؟

المحلول

الفكرة وراء شظية هي أنه قسم غير قابل للاسترداد (أي جزء) من النشاط الذي يمكن استخدامه في الأنشطة الأخرى، أو حتى في نفس النشاط ولكن مع إضافة أو عدم وجود شظايا أخرى.

في تطبيق Gmail على سبيل المثال، فإن قائمة جميع رسائل البريد الإلكتروني في صندوق الوارد هي جزء واحد، والمحتويات الفعلية للبريد الإلكتروني جزء آخر. على جهاز لوحي في وضع أفقي، يتم عرض كلاهما. ومع ذلك، فإن الهاتف في وضع عمودي، ومع ذلك، سوف تظهر فقط واحدة من الشظايا في وقت واحد.

وبالتالي يجب أن يغليف كل جزء من جميع وثائق ومكونات UI اللازمة لاستخدام هذه الشظية. هذا يعني أن جميع أساليب "الخاصة" الخاصة بك "مثل تضخيم رأي طريقة XML يجب أن تحدث داخل الجزء.

النشاط (أو الأنشطة) التي تستخدم الشظية يجب أن تحتاج فقط إلى استخدام FragmentManager (أو طريقة مماثلة) لإضافة شظيتك إلى تخطيط النشاط. يجب أن يتعامل نشاط الوالد في جزء من التواصل بين الشظايا والمكونات الأخرى مثل الأنشطة أو الشظايا أو المواضيع الأخرى.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top