【发布时间】:2013-03-14 16:17:23
【问题描述】:
我可以在 iOS 的警告框上放置多个文本输入框吗?
【问题讨论】:
-
是的,你可以。你为什么需要这个?如果您需要,可以为登录提示设置一套布局样式。
-
UIAlertView已经支持 1 或 2 个文本字段。请阅读UIAlertView的文档。
我可以在 iOS 的警告框上放置多个文本输入框吗?
【问题讨论】:
UIAlertView 已经支持 1 或 2 个文本字段。请阅读UIAlertView 的文档。
最好的解决方案是编写或使用包含您需要的文本字段的自定义警报视图。如果您只需要 1 个文本字段(或用户名/密码),您仍然可以通过设置 alertViewStyle property 来使用 UIAlertView。
已经编写了自定义警报视图,例如this one。
【讨论】:
是的,这是可能的。 只需将 UITextField 作为子视图添加到 UIAlertView。 为每个 UITextField 设置标签,以便稍后检索输入的文本。
UIAlertView* alert=[[UIAlertView alloc] initWithTitle:@"Title" message:@"Message" delegate:self cancelButtonTitle:@"Cancel" otherButtonTitles:@"OK", nil];
UITextField *textField1 = [[UITextField alloc] initWithFrame:CGRectMake(12.0, 50.0, 260.0, 25.0)];
textField1.tag=0;
textField1.borderStyle=UITextBorderStyleRoundedRect;
textField1.delegate=self;
[alert addSubview:textField1];
UITextField *textField2 = [[UITextField alloc] initWithFrame:CGRectMake(12.0, 85.0, 260.0, 25.0)];
textField2.tag=1;
textField2.delegate=self;
textField2.borderStyle=UITextBorderStyleRoundedRect;
[alert addSubview:textField2];
[alert show];
请注意,这是一种不好的做法,因为它依赖于 UIAlertView 作为 UIView 的子类。正如下面的 MusiGenesis 所指出的,它从 iOS 7 开始就无法使用。
希望对您有所帮助。
【讨论】:
UIAlertView 并不是要添加随机子视图。它现在可能有效,但这并不意味着它是一个好方法。
UIAlertView。
如果你想要2个文本框,你可以使用登录样式,但是将第二项secureTextEntry设置为NO,参考 http://forums.macrumors.com/threads/uialertviews-with-textfields.1355954/
【讨论】: