كيف يمكنني الحصول على popover من علامة تبويب بدلاً من العرض
-
25-09-2019 - |
سؤال
لدي تطبيق Tabbar ، وأريد أن يأتي Popover من إحدى علامات التبويب. هل هناك طريقة جيدة/سهلة للقيام بذلك دون تغيير وجهات النظر؟
المحلول
لا توجد حاليًا وسيلة للاتصال مباشرة (من خلال مكالمة واجهة برمجة التطبيقات المدعومة) احصل على إطار عنصر شريط علامة تبويب معين. ما أفعله هو مجرد إظهار المنبثقة من الطرف الأيسر من شريط علامة التبويب مثل هذا:
CGFloat tabBarHeight = self.tabBarController.tabBar.bounds.size.height;
CGRect rect = CGRectMake(0, 0, tabBarHeight, tabBarHeight);
[popoverController presentPopoverFromRect:rect
inView:self.tabBarController.tabBar
permittedArrowDirections:UIPopoverArrowDirectionDown animated:YES];
يمكنك محاولة تقدير موضع عنصر شريط علامة التبويب مع مراعاة الاتجاه الحالي إذا كنت ترغب حقًا في ضبط إحداثيات X المذكورة أعلاه وضبطها.
يمكنك أيضًا النظر في المشاهدات الفرعية لـ Tabbar والعثور على كائن Uitabbarbutton ولكن هذا غير موثق لذلك لا ينصح به.
لا تنتمي إلى StackOverflow