当我启动我的iPad应用程序时,我想在启动时显示在主视图顶部滑动的屏幕。我希望这个屏幕占据整个屏幕并显示一个网页,用户可以摆脱它的唯一方法就是点击屏幕底部的UIButton。
现在,我将主视图控制器的视图设置为我想要显示的视图,但执行的下一步是显示UIAlert,并且此警报正在显示。
我可以使用什么方法让弹出窗口等待用户在继续之前单击“同意”?
感谢。
答案 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