我正在尝试使用3个TextFields和3个标签创建一个UIAlertView。
但是使用我当前的代码,他们只是互相讨论,我试图改变AlertView的框架,我试图使用CGAffineTransform但它们都不起作用。
这是我的代码:
UIAlertView *myAlertView = [[UIAlertView alloc] initWithTitle:@"Sign in" message:@"\n\n\n\n\n" delegate:self cancelButtonTitle:@"Stop" otherButtonTitles:@"Sign in",nil];
UILabel *customerIdLabel = [[UILabel alloc] initWithFrame:CGRectMake(20, 55, 65, 21)];
customerIdLabel.tag =1;
customerIdLabel.text = @"Customer id: ";
[myAlertView customerIdLabel];
UITextField *customerIdField = [[UITextField alloc] initWithFrame:CGRectMake(89, 50, 160, 30)];
customerIdField.tag = 2;
customerIdField.placeholder = @"Fill in your customer id";
[myAlertView customerIdField];
然后还有两个组合。
以下是我尝试过的转换:
CGAffineTransform myTransform = CGAffineTransformMakeScale(1.0, 0.5f);
[myAlertView setTransform:myTransform];
这就是我得到的:
答案 0 :(得分:3)
我很确定你不应该像这样使用UIAlertViews。您应该设置标题,消息等,并使用[alertview show]。 documentation似乎非常清楚它是一个原样的类.UIAlertViewStyle可能是你可以看到的东西,但选项是1个文本字段,1个安全字段或用户名和密码字段。< / p>
您最好的选择是使用新的UIViewController并使用presentViewController:animated:completion:调用。
答案 1 :(得分:0)
我通过不更改UIAlertView但在显示时添加清晰视图(可以使用空格填充)并在正确的位置添加文本字段(注意旋转发生时)。然后,让水龙头通过视图到达UIAlertView。这已经在商店的3个应用程序中通过Apple。
答案 2 :(得分:0)
在xcode 5中的新SDK之前,您可以将子视图添加到警报视图但不再起作用。我不得不更新一个应用程序,因为这个讨厌的代码。最好使用uipopovercontroller for ipad或显示UIView,甚至为ipad或iphone提供viewcontroller。