Uiview Cliptobounds لا يمنع لمسات تلقي فرعية خارج الرأي الرئيسي

StackOverflow https://stackoverflow.com//questions/12714122

سؤال

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

لدي ثلاث لقطات تظهر التخطيط. لقد قمت بتلوين الأم الأخضر والأطفال الأحمر.

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

لقد قمت بتمكين CliptObOunds، لذلك لا أستطيع أن أفهم سبب حظر الفرع الفرعي UITABBAR الأساسي. هل فهمي للجمعيات خاطئة تماما ؟؟

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

المحلول

باستخدام CliptobOunds يؤثر فقط على التصميم المرئي ل Subview، وليس التصميم المنطقي.هذا يعني أنه في حين أن بلدي الفرعي الفرعي غير مرئي للعين، فإنه مرئي للمس.

لقد عملت حول هذه المشكلة عن طريق تحريك حجم حجم الفرعية الفرعي بدلا من موقعه.في التعليمات البرمجية أدناه، فإن StationProxayView هو الفرعي الفرعي.أقوم بتحريك حجمها بنسبة 40 بكسل لإعادة العنوان الأسود إلى عرض.

giveacodicetagpre.

عندما لم أعد بحاجة إليها، أقوم بتحريكها بعيدا عن الرأي.

giveacodicetagpre.

إذا كان المستخدم ينطبق على زر العرض، فسيتم عرض الفرعية الفرعية بأكملها:

giveacodicetagpre. يؤدي الفصل

إلى إخفاء الرأي بنفس طريقة الشريط الصغير.

giveacodicetagpre.

في الوقت الراهن، يتم اختبار هذا الرمز فقط على iPhone 5، وبالتالي فإن الارتفاع الصلب المشفر من 500 سيؤدي إلى مشاكل في نماذج iPhone السابقة.

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