如何在iOS中将UIAlertView显示为全屏? 非常有问题,有时会弹出tableview。因此使用alertview显示tableview很容易,但它不是expandng大小。为此,如何在iOs中全屏显示警报视图?
答案 0 :(得分:3)
您无法更改/更改苹果默认UIAlertView。
而是使用自定义视图及其模仿和行为,您可能希望将YourCustomAlertView
添加到:
CustomAlert.h
@interface CustomAlert : NSObject
+ (void)alertShow;
+ (void)alertHide;
@end
CustomAlert.m
@implementation CustomAlert
+ (void)alertShow
{
UIWindow *window = [UIApplication sharedApplication].keyWindow;
UIView *existingView = [window viewWithTag:123456789];
if (existingView != nil ) // removes existing alert view to avoid multi occurance
{
[existingView removeFromSuperview];
}
UIView *YourCustomAlertView = [[UIView alloc] initWithFrame:YourFrame];
YourCustomAlertView.tag = 123456789; // add tag to remove the view later
// ...
[window addSubview: YourCustomAlertView];
//this will place your `YourCustomAlertView` to the top most like the default UIAlertView...
[UIView animateWithDuration:0.3 animations:^{ [YourCustomAlertView setAlpha:1]; }];
}
+ (void)alertHide
{
UIWindow *window = [UIApplication sharedApplication].keyWindow;
UIView * YourCustomAlertView = [window viewWithTag: 123456789];
[UIView animateWithDuration:0.3 animations:^{
[YourCustomAlertView setAlpha:0];
} completion:^(BOOL done){ if (done) { [YourCustomAlertView removeFromSuperview]; } }];
}
@end
使用它像:
[CustomAlert alertShow];
注意:这只是制作CustomUIAlertView
的指南,或者如果您不想自己搜索一些现成的CustomAlertView
,抱歉我不会使用任何一个我不能推荐..
这只是一个示例,您可以随意更改任何内容,也许您希望将initWithTitle: message: button:
添加到您自己。和许多其他细节...
干杯! :)
答案 1 :(得分:0)
使用此类中定义的属性和方法设置警报视图的标题,消息和委托,并配置按钮。如果添加自定义按钮,则必须设置委托。委托应符合UIAlertViewDelegate协议。使用show方法在配置后显示警报视图。
因此无法修改val a1: ValidateNode = label("a1") |+| text("a1a1a1")
val a2: ValidateNode = label("a2") |+| text("a2a2a2")
val a3: ValidateNode = label("a3")
val a: ValidateNode = label("a") |+| child(a1) |+| child(a2) |+| child(a3)
。您需要创建自己的UIALertView
。
只需创建一个视图,并在需要显示警报时使其可见。 github like this上还有一些例子。您也可以在Cocoapods示例中找到。