我想显示并且警报应该显示在所有另一个视图中,并且当应用程序在后台运行时也应该显示UIView
。UIAlert
是否可以 ?如果没有,那我该怎么做?
问问题
195 次
3 回答
1
试试这个代码: -
鉴于 didload 方法:
-(void)viewDidLoad
{
flag=YES;
[super viewDidLoad];
}
在 viewWillAppear 方法中:
-(void)viewWillAppear:(BOOL)animated
{
v=[[UIView alloc]initWithFrame:CGRectMake(0, 490, 320, 300)];
v1.layer.cornerRadius = 10.0;
v1.clipsToBounds = YES;
v1.frame=CGRectMake(0, 490, 320, 108);
}
和
-(IBAction)btn_Clicked
{
if (flag == NO)
{
v=[[UIView alloc]initWithFrame:CGRectMake(0, 490, 320, 300)];
v1.layer.cornerRadius = 10.0;
v1.clipsToBounds = YES;
v1.frame=CGRectMake(0, 490, 320, 108);
v.hidden=NO;
v.frame=CGRectMake(0, 0, 320, 460);
v.backgroundColor=[UIColor colorWithWhite:0 alpha:0.2];
[self.view addSubview:v];
[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:0.5];
v1.frame=CGRectMake(69, 176, 185, 108);
[v addSubview:v1];
[UIView commitAnimations];
}
else
{
v.hidden=NO;
v.frame=CGRectMake(0, 0, 320, 460);
v.backgroundColor=[UIColor colorWithWhite:0 alpha:0.2];
[self.view addSubview:v];
[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:0.5];
//v1.backgroundColor=[UIColor colorWithWhite:0 alpha:0.3];
v1.frame=CGRectMake(69, 176, 185, 108);
[v addSubview:v1];
[UIView commitAnimations];
}
}
和
-(IBAction)cancel_Clicked
{
flag=NO;
v.hidden=YES;
}
于 2012-09-21T06:15:54.467 回答
0
当您的应用程序进入后台时,您没有太多的显示权限UIAlertView
,您可以尝试UILocalNotification
。
但我猜你想要一个自定义弹出窗口,这是你自己的视图。
只需尝试UIView
从Interface Builder
. 并添加为子视图。
UIView *v = [[UIView alloc] initWithFrame:CGRectMake(30, 30, 290, 290)];
[self.view addSubView:v];
但是一旦你的应用程序处于后台,你就不能再做任何事情了。
于 2012-09-21T05:03:24.377 回答
0
您可以在 UIAlertView 中添加 UIView,
但在后台运行的应用程序不能,它只是通知样式。
于 2012-09-21T05:27:28.737 回答