Я новичок в xcode, и я столкнулся с этой проблемой, и я не уверен, как ее исправить. У меня проблема в том, что у меня UIViewController, в котором есть комбинация popover segue, custom segue и контроллера навигации.
Пользователь нажимает на текстовое поле, и появляется всплывающее окно, и они могут выбрать город из всплывающего окна, и оно закрывается. Но если они нажимают на кнопку, которая выполняет пользовательский переход, всплывающее окно появляется снова.
Можно ли как-нибудь помешать поп-музыке снова выстрелить?
Вот как мой код
@interface ….
{
UIPopoverController *popoverController;
}
@property (strong) UIPopoverController *popoverController;
@end
@implementation …
@synthesize popoverController;
…
-(BOOL)popoverControllerShouldDismissPopover:(UIPopoverController *)popoverController
{
return YES;
}
-(void)popoverControllerDidDismissPopover:(UIPopoverController *)popoverController
{
self.popoverController = nil;
}
-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
UIStoryboardPopoverSegue *storePopeOver;
UIPopoverController *thePopover;
UIViewController *ContentVC;
if(self.popoverController)
{
[self.popoverController dismissPopoverAnimated:NO];
self.popoverController = nil;
}
//Popover
if([segue.identifier isEqualToString:@"FindFrom"])
{
storePopeOver =(UIStoryboardPopoverSegue *)segue;
thePopover = [storePopeOver popoverController];
self.popoverController = thePopover;
[segue.destinationViewController setDelegate:self];
self.segueTyp = @"FROM";
}
//Custom segue
if([segue.identifier isEqualToString:@"TimeTable"])
{
[segue.destinationViewController setDelegate:self];
}
}
//When the user clicks on the textField performDegue
- (IBAction)FromTxtFieldBeginEdit:(UITextField *)sender {
[self performSegueWithIdentifier:@"FindFlightsFrom" sender:self];
}
}