UIAlert控制器中的中心滑块

时间:2018-08-27 15:38:30

标签: ios objective-c slider uialertview

这是我的代码,我有一个uialert控制器,并且在其中放置了一个滑块。当我运行该应用程序并打开此警报时,滑块不在中心。 My alert 有人可以帮我吗?

UIAlertController * alert = [UIAlertController
                                     alertControllerWithTitle:NSLocalizedString(@"Speech volume", @"")
                                     message:NSLocalizedString(@"Select speech volume", @"")
                                     preferredStyle:UIAlertControllerStyleAlert];

        UIView *subView = alert.view.subviews.firstObject;
        UIView *alertContentView = subView.subviews.firstObject;
        CGRect frame = CGRectMake(10,20,100, 100.0);
        UISlider *slider = [[UISlider alloc] initWithFrame:frame];
        [slider setBackgroundColor:[UIColor clearColor]];
        slider.minimumValue = 0.0;
        slider.maximumValue = 100.0;
        slider.continuous = YES;
        NSNumber *volume = [preferences objectForKey:@"volume"];
        if (volume != NULL)
            slider.value = [volume floatValue];
        else
            slider.value = 50.0;

        UIAlertAction* yesButton = [UIAlertAction
                                    actionWithTitle:@"Ok!"
                                    style:UIAlertActionStyleDefault
                                    handler:^(UIAlertAction * action) {
                                        NSNumber *value = [NSNumber numberWithFloat:slider.value];
                                        [preferences setObject:value forKey:@"volume"];
                                        [preferences synchronize];
                                        [self.tabBarController setSelectedIndex:4];
                                    }];

        UIAlertAction* cancelButton = [UIAlertAction
                                       actionWithTitle:NSLocalizedString(@"Cancel", @"")
                                       style:UIAlertActionStyleDefault
                                       handler:^(UIAlertAction * action) {
                                           [self.tabBarController setSelectedIndex:4];
                                       }];

        [alertContentView addSubview:slider];
        [alert addAction:yesButton];
        [alert addAction:cancelButton];
        [self presentViewController:alert animated:YES completion:nil];

0 个答案:

没有答案