可以为UIViewAlert添加自定义uiview吗?

时间:2013-07-19 09:03:37

标签: iphone ios objective-c uiview uialertview

我有UIView textfieldbuttonUIWebView的自定义UIView。我想将此自定义UIAlertView添加到{{1}}以在屏幕上显示。我能这样做吗?感谢

4 个答案:

答案 0 :(得分:3)

你确实可以这样做,但是你的应用会遭到拒绝,如Apple的Human Interface Guidelines所述。如果您仍想这样做,那么只需[alertView addSubview:view];即可。

我建议制作你自己的UIAlertView,但是比UIAlertView中看起来更加统一的设计和更好的用户体验。

答案 1 :(得分:1)

为什么要在自定义alertview中添加和显示。您可以在子视图中显示它并使用addSubview:method

显示它

请注意,alertview的目的是提供一个警报,它本身就是唯一的目的.UIView是为了呈现它的目的

答案 2 :(得分:0)

是的,您可以添加,需要设置正确的框架以及视图上的按钮操作等所有内容。

 UIAlertView *alert = [[UIAlertView alloc]initWithTitle:@"test" message:@"\n\n\n\n\n\n\n\n\n\n\n" delegate:self cancelButtonTitle:nil otherButtonTitles:nil, nil];
    UIView *view= [[UIView alloc]initWithFrame:CGRectMake(0, 0, 300, 300)];
    view.backgroundColor = [UIColor redColor];
    [alert addSubview:view];
    [alert show];

答案 3 :(得分:0)

尝试此代码我正在添加标签。

delegate.alert=[[UIAlertView alloc]initWithTitle:@"Password" message:@"\n\n\n\n\n" delegate:self cancelButtonTitle:nil otherButtonTitles:nil, nil];

    delegate.lbl=[[UILabel alloc]init];
    delegate.lbl.frame=CGRectMake(60, 42, 200, 18);

    delegate.lbl.backgroundColor=[UIColor clearColor];
    [delegate.alert addSubview:delegate.lbl];

无论您的控制如何添加,但只能正确设置框架...根据您的需要......