0

似乎是一个令人震惊的微不足道的差异。传递一个非nil值 for otherButtonTitlesto 会UIAlerView爆炸。

在职的:

UIAlertView *alert = [[UIAlertView alloc]
                      initWithTitle:@"Login with your credentials"
                      message:nil
                      delegate:nil
                      cancelButtonTitle:@"Cancel"
                      otherButtonTitles:nil];

不工作:

UIAlertView *alert = [[UIAlertView alloc]
                      initWithTitle:@"Login with your credentials"
                      message:nil
                      delegate:nil
                      cancelButtonTitle:@"Cancel"
                      otherButtonTitles:@"OK"];

是什么赋予了?

4

2 回答 2

4
UIAlertView *alert = [[UIAlertView alloc]
                      initWithTitle:@"Login with your credentials"
                      message:nil
                      delegate:nil
                      cancelButtonTitle:@"Cancel"
                      otherButtonTitles:@"OK1",@"OK2",nil];

最后一个参数是一个多参数,应该由 nil 终止。

于 2012-08-10T23:36:53.600 回答
2

基本上,你应该有这个:

UIAlertView *alert = [[UIAlertView alloc]
                      initWithTitle:@"Login with your credentials"
                      message:nil
                      delegate:nil
                      cancelButtonTitle:@"Cancel"
                      otherButtonTitles:@"OK", nil];

在此处声明“要添加到接收器的附加按钮的标题,以 nil 终止。”

基本上,它是一个多值参数,可以抓取值直到为零。它与数组和列表的工作方式相同。

于 2012-08-11T00:47:49.390 回答