سؤال

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

MainView *mainView = [[MainView alloc] initWithNibName:@"MainView" bundle:nil]; [mainView doStuff];

تعمل وظيفة "dostuff" على تغيير بعض العناصر داخل العرض. على سبيل المثال ، من المفترض أن يتم تغيير لون شريط الأدوات. لقد وضعت أمر طباعة ويتم تنفيذ الأمر المطبوع. ولكن لسبب ما ، لن يغير شريط الأدوات اللون.

  • لقد استوردت رأس Mainview في البوبوفر.
  • لقد فعلت ذلك class thingy لـ Mainview في بلدي popover.
  • تم الإعلان عن دوستوف في رأس Mainview.
  • يتم الإعلان عن Iboutlets أيضًا ، ومتصل.

أيه أفكار؟

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

المحلول

حسنًا ، من المخيب للآمال أنه ليس لدينا طريقة مباشرة يمكن استخدامها للتحقق من عرض (وحدة التحكم في العرض) ، يتم عرض Popover. الشيء الذي أقوم به في التطبيق المقاعد هو:

New_iPadAppDelegate *appDel = (New_iPadAppDelegate *)[[UIApplication sharedApplication] delegate];
    NSArray *viewConts = [(UINavigationController *)[[appDel tabBarController] selectedViewController] viewControllers];
    MainViewController *viewController =  (MainViewController *)[viewConts lastObject];
    if([[viewController popoverController] isPopoverVisible]){
        [viewController doStuff];
    }

أتمنى أن يساعدك هذا،

أعلم أن هذا ليس هو أفضل طريقة ، على أمل أن تفكر Apple في هذه المشكلة ، أو إذا كان شخص ما قد ابتكر عملًا حوله.

شكرًا،

Madhup

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