我有一个UIAlertView,alertView,它在viewDidLoad方法中初始化,如:
self.alertView = [[UIAlertView alloc] initWithTitle:@"Meddelande"
message:@"Do you want to continue?"
delegate:self
cancelButtonTitle:@"No"
otherButtonTitles:@"Yes", nil];
我也有一些通过按下不同的按钮调用的方法:
- (IBAction)didPressButton1 {
[self.alertView show];
}
我认为这会显示alertView,但没有任何反应。一种解决方案是调用一个初始化alertView并同时显示它的metod,但我希望这可以工作。
alertView的属性如下所示:
@property (nonatomic, strong) UIAlertView *alertView;
我还在类扩展中添加了这样的委托:
@interface MyViewController () <UIAlertViewDelegate>
@end
我做错了什么?
汉克
答案 0 :(得分:1)
你没有做坏事。这段代码有效。您的错误在于您如何声明alertView
。
确保你这样做
@property (nonatomic, retain)UIAlertView *alertView;
您正在将didPressButton1
方法与UIButton
。
答案 1 :(得分:1)
在界面(.h)文件中
@interface Your_Class:NSObject <UIAlertViewDelegate>
@property (strong, nonatomic) UIALertView *uv;
//在实施文件
中@synthesize uv;
//在ViewDidLoad中
self.uv = [[UIAlertView alloc] initWithTitle:@"Meddelande"
message:@"Do you want to continue?"
delegate:self
cancelButtonTitle:@"No"
otherButtonTitles:@"Yes", nil];
//在按钮操作中
- (IBAction)didPressButton1 {
[self.uv show];
}
答案 2 :(得分:0)
您是否检查过didPressButton1方法是否正在调用? 如果没有,请以正确的方式连接。