Ich möchte die Breite des UIAlertController-Rahmens erhalten, so dass ich die Breite von UIPickerView und UIToolbar angeben kann, die mit dem UIAlertController geliefert werden.Wie bekomme ich die Rahmenbreite von UIAlertController?
Ich habe versucht, die folgende Anweisung zu verwenden, um die Breite zu erhalten.
alertPicker.view.frame.size.width
Aber ist die Breite genauso wie Viewcontroller ist:
self.view.frame.size.width
Irgendeine Idee, um die Breite des UIAlertController zu bekommen? Danke vielmals.
Dies ist mein Code.
UIAlertController *alertPicker = [UIAlertController alertControllerWithTitle:nil message:@"\n\n\n\n\n\n\n\n\n\n\n\n" preferredStyle:UIAlertControllerStyleActionSheet];
CGRect pickerFrame = CGRectMake(8, 0, alertPicker.view.frame.size.width, self.view.frame.size.height/2);
UIPickerView *pickerView = [[UIPickerView alloc] initWithFrame:pickerFrame];
pickerView.showsSelectionIndicator = YES;
pickerView.dataSource = self;
pickerView.delegate = self;
UIToolbar* pickerToolbar = [[UIToolbar alloc] initWithFrame: CGRectMake(2, 0, alertPicker.view.frame.size.width, 44)];
UIBarButtonItem *doneBtn = [[UIBarButtonItem alloc] initWithTitle:@"Done" style:UIBarButtonItemStylePlain target:self action:@selector(doneBtnisClicked:)];
UIBarButtonItem *flexSpace = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:nil action:nil];
pickerToolbar.items = [[NSArray alloc] initWithObjects:flexSpace,doneBtn,nil];
[alertPicker.view addSubview:pickerToolbar];
[alertPicker.view addSubview:pickerView];