كيفية تقديم mpmovieplayerviewController من uitabbarcontroller؟
-
29-09-2019 - |
سؤال
لدي وحدة تحكم عرض تمت إضافتها إلى UITabBarController
. في وحدة التحكم في العرض هذه ، لدي زر يفتح فيلمًا باستخدامه MPMoviePlayerViewController
.
عندما أقوم بتشغيل الفيلم ، لا يزال شريط التنقل العلوي متشابكًا في أعلى الفيلم ، مما يمنع جزءًا من الشاشة بشكل فعال.
عندما لا تكون وحدة تحكم العرض هذه داخل UITabBarController
, ، ومع ذلك ، يلعب الفيلم بشكل جيد.
هل يعلم احدكم ماذا يحدث؟
المحلول
اكتشفه. أعتقد أن الأمور تصبح متزعزعًا لأن MPMoviePlayerViewController
تمت إضافة طريقة كفئة إلى UIViewController
اتصل presentMoviePlayerViewControllerAnimated:
. عادة ما تسميها هكذا في UIViewController
:
[self presentMoviePlayerViewControllerAnimated:mp];
ولكن في هذه الحالة ، إذا قمت بإضافة وحدة التحكم في العرض إلى أ UITabBarController
كومة، self
هو وحدة تحكم العرض الخاصة بك داخل وحدة تحكم شريط علامة التبويب ، وأعتقد أن هذا يجعل الأمور مروعة. الإصلاح هو الاتصال presentMoviePlayerViewControllerAnimated:
مع وحدة التحكم في عرض الوالدين ، والتي كانت في حالتي أخرى UIViewController
كان هذا الإسكان UITabBarController
. لقد أشرت ببساطة إلى عرض الوالدين وأضفته إلى وحدة تحكم العرض الخاصة بي init
الطريقة ، ثم تسمى شيء مثل [parentController presentMoviePlayerViewControllerAnimated:mp]
.
يا للعجب. أتمنى أن يساعد ذلك شخص ما.