如何在uialertview中添加复选框?

时间:2014-03-29 06:24:33

标签: iphone uialertview

我是iPhone开发的新手。我想在警报视图中添加一个复选框。我在过去的两天里对这个警报视图进行了测试,但没有得到任何正在运行的演示项目。我想要这个警报箱!

enter image description here

任何人都可以帮助我吗?

2 个答案:

答案 0 :(得分:3)

尝试使用此代码添加alertview中的复选框。

 UIButton *nameField = [[UIButton alloc] initWithFrame:CGRectMake(0.0, 0, 50, 50.0)];
UIView *v = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 250, 40)];
[nameField setImage:[UIImage imageNamed:@"checkbox_off.png"] forState:UIControlStateNormal];
[v addSubview:nameField];
UIAlertView *av = [[UIAlertView alloc] initWithTitle:@"TEST" message:@"subview" delegate:nil cancelButtonTitle:@"NO" otherButtonTitles:@"YES", nil];
[av setValue:v  forKey:@"accessoryView"];
[av show];

我希望这段代码对你有用。

答案 1 :(得分:0)

iOS版本独立

-(void) showAlert {
    isReemeber = TRUE;
    rememberButton = [[UIButton alloc] init];
    UIView *v = [[UIView alloc] init];
    [rememberButton setImage:[UIImage imageNamed:@"checkbox-checked.png"] 
                                    forState:UIControlStateNormal];
    [rememberButton setTitle:@" Don't show me again" forState:UIControlStateNormal];
    [rememberButton addTarget:self action:@selector(toggleRememberMethod) 
                     forControlEvents:UIControlEventTouchUpInside];

    [v addSubview:rememberButton];
    UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Confirmation" 
                                                    message:@"" 
                                                   delegate:self 
                                          cancelButtonTitle:@"Cancel" 
                                          otherButtonTitles:@"Yes", nil];

    if (floor(NSFoundationVersionNumber) > NSFoundationVersionNumber_iOS_6_1) {

        v.frame = CGRectMake(0, 0, 250, 40);
        rememberButton.frame = CGRectMake(0.0, 0, 250, 50.0);
        [rememberButton setTitleColor:[UIColor blackColor] 
                             forState:UIControlStateNormal];
        alert.message = @"Message here";
        [alert setValue:v  forKey:@"accessoryView"];

    } else {

        v.frame = CGRectMake(0, 80, 250, 40);
        rememberButton.frame = CGRectMake(0.0, 0, 250, 40.0);
        alert.message = @"Message here\n\n\n\n";
        [alert addSubview:v];

    }
    [alert show];

}


-(void)toggleRememberMethod {
    if (isReemeber) {
        [rememberButton setImage:[UIImage imageNamed:@"checkbox.png"] 
                        forState:UIControlStateNormal];

        isReemeber = FALSE;
    } else {
        [rememberButton setImage:[UIImage imageNamed:@"checkbox-checked.png"] 
                        forState:UIControlStateNormal];

        isReemeber = TRUE;
    }
}