在执行开始时显示弹出窗口

时间:2011-01-10 20:25:04

标签: ipad

当我启动我的iPad应用程序时,我想在启动时显示在主视图顶部滑动的屏幕。我希望这个屏幕占据整个屏幕并显示一个网页,用户可以摆脱它的唯一方法就是点击屏幕底部的UIButton。

现在,我将主视图控制器的视图设置为我想要显示的视图,但执行的下一步是显示UIAlert,并且此警报正在显示。

我可以使用什么方法让弹出窗口等待用户在继续之前单击“同意”?

感谢。

1 个答案:

答案 0 :(得分:0)

您需要使用委托

所以要做你想做的事情(我不知道你的实际课程名称,所以我猜):

AlertScreenViewController.h 文件中添加以下代码:

@protocol AlertScreenViewControllerDelegate;
@interface AlertScreenViewController : UIViewController {
  ...
  id<AlertScreenViewControllerDelegate> delegate;
  ...
}
...
@property (assign) id<AlertScreenViewControllerDelegate> delegate;
...
@end

@protocol AlertScreenViewControllerDelegate <NSObject>
- (void)alertScreenViewControllerWillClose;
@end

然后在 AlertScreenViewController.m 文件中:

添加:

@implementation AlertScreenViewController
...
@synthesize delegate;
...
@end

在按下按钮的任何地方添加此代码:

[self.delegate alertScreenViewControllerWillClose];

MainViewController.h 文件中添加以下内容:

#import "AlertScreenViewController.h"
@interface MainViewController : UIViewController <AlertScreenViewControllerDelegate> {
...
}
...
@end

MainViewController.m 文件中添加以下内容:

在你加载AlertScreenViewController的任何地方,在init调用之后添加它:

alertscreenviewcontroller.delegate = self;

然后在将alertscreenviewcontroller代码显示之后将所有代码移动到此方法:

- (void) alertScreenViewControllerWillClose {
  //UIAlert logic here
}

您可以在此处找到另一个示例:http://www.dosomethinghere.com/2009/07/18/setting-up-a-delegate-in-the-iphone-sdk/

或者只是google iphone sdk delegate