目前,我有一个类在各处弹出 UIAlertView
。目前,同一个类是这些的委托(delegate)(这是非常合乎逻辑的)。不幸的是,这些 UIAlertView
将调用该类的相同委托(delegate)方法。现在,问题是——您如何知道从哪个警报 View 调用了委托(delegate)方法?我正在考虑只检查警报 View 的标题,但这并不是那么优雅。处理多个 UIAlertView
的最优雅的方法是什么?
最佳答案
像这样标记 UIAlertView
:
#define kAlertViewOne 1
#define kAlertViewTwo 2
UIAlertView *alertView1 = [[UIAlertView alloc] init...
alertView1.tag = kAlertViewOne;
UIAlertView *alertView2 = [[UIAlertView alloc] init...
alertView2.tag = kAlertViewTwo;
然后使用这些标签在委托(delegate)方法中区分它们:
- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex {
if(alertView.tag == kAlertViewOne) {
// ...
} else if(alertView.tag == kAlertViewTwo) {
// ...
}
}
关于ios - 委托(delegate)的几个 UIAlertViews,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2338546/