gpt4 book ai didi

ios - 无法使 UIAlertView 调用委托(delegate)方法 - 部署目标 iOS7

转载 作者:行者123 更新时间:2023-11-28 19:38:52 25 4
gpt4 key购买 nike

我正在研究 XCode7 和我正在研究的这个项目,UIAlertview 工作正常。
我设置了一个 cocoa-touch 文件,定义了一个继承自 NSobject 的新类,

NSVerifier.h

@interface NSVerifier : NSObject<UITextFieldDelegate, UIAlertViewDelegate>
{
..
}

在实现中我有:

NSVerifier.m

- (void)alertView:(UIAlertView *)aView clickedButtonAtIndex:(NSInteger)buttonIndex{
//Breakpoint here
..
}

-(void)show{
UIAlertView* t = [[UIAlertView alloc] initWithTitle:@"test" message:@"testing" delegate:self cancelButtonTitle:@"Cancel" otherButtonTitles:@"ok", nil];
[t show];
}

viewDidAppear 内:

NSSVerifier* iVerifier = [[NSVerifier alloc] init];
[iVerifier show];

当我按下 ok 按钮时,我一整天都在尝试让该断点停止,但从未到达断点。

另一方面...

我有另一个在 iOS7 时代做的项目,我导入了这个类。它在那里工作......
当我放置委托(delegate)方法时,我收到警告 UIAlertView 在 iOS9 中被弃用,并且我正在调试哪个设备(iOS9),但是由于两个设备上的部署目标都是 iOS7,这应该不起作用还是?

最佳答案

你有没有设置alert delegate为self:

t.delegate = self;

试试看?

更新:并确保创建 NSVerifier 的位置具有强引用,以便在显示 UIAlertView 后不会删除 UIAlertView 委托(delegate)。例如,在您的 ViewController 中,在您的 .h 中创建 iVerifier:

@property (nonatomic, strong) NSVerifier *iVerifier;

再想一想

关于ios - 无法使 UIAlertView 调用委托(delegate)方法 - 部署目标 iOS7,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36175192/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com