Ich habe eine UIPickerview, die in Interface Builder erstellt wird. Und über Code habe ich eine Werkzeugleiste als Unteransicht platziert und eine Schaltfläche "Fertig" als Symbolleistenleiste. Ich möchte eine Aktion ausführen, wenn ich auf "Fertig" klicke (die Auswahl und einige Extras ausblenden). Aber aus irgendeinem Grund funktioniert die Aktion für die Schaltfläche "Done" nicht. Hier ist der Code zum Erstellen der Symbolleiste und des Balkenschaltfeldelements in viewDidLoad.Aktion für UIBarButtonItem in der Symbolleiste, die in PickerView nicht funktioniert
UIToolbar *toolBar= [[UIToolbar alloc] initWithFrame:CGRectMake(0,0,320,44)];
toolBar.barTintColor = [UIColor colorWithRed:70/250.0f green:70/250.0f blue:70/250.0f alpha:1.0];
UIBarButtonItem *barButtonDone = [[UIBarButtonItem alloc] initWithTitle:@"Done"
style:UIBarButtonItemStyleDone target:self action:@selector(doneButtonTapped:)];
UIBarButtonItem *flexible = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:self action:nil];
toolBar.items = @[flexible, barButtonDone, flexible];
barButtonDone.tintColor=[UIColor colorWithRed:227/255.0f green:178/255.0f blue:49/255.0f alpha:1.0];
[picker addSubview:toolBar];
[picker bringSubviewToFront:toolBar];
Und hier ist die Methode doneButtonTapped:
-(void)doneButtonTapped:(UIBarButtonItem *)sender{
NSLog(@"Done button tapped");
picker.hidden = true;
[self.view bringSubviewToFront:txtCity];
[self.view bringSubviewToFront:advancedSearchLine];
[self.view bringSubviewToFront:txtCityLine];
}
ich in der Layout-Debugger überprüft, während die App ausgeführt wird, und zwar auf die Schaltfläche Fertig in der Vorderseite der Ansicht ist, also nichts vor, es zu verhindern, dass es funktioniert. Was mache ich falsch?
Sie fügen als picker subview diese Ansicht nicht nehmen tun, auf Add-Symbolleiste und fügen Sie Picker Follow Symbolleiste –
Was Sie von pickerFolge Symbolleiste bedeuten nicht –
nie Geist es. Vielen Dank –