【发布时间】:2011-10-27 05:22:21
【问题描述】:
当我的模态视图被关闭时,当我尝试从 rootViewController 中的 UITableView 重新加载数据时,我在使用协议/委托时遇到了问题。
这是我的模态视图 .h 文件中的一些代码:
@protocol LoginWebViewDelegate <NSObject>
-(void) updateFromModalView;
@end
@interface myModalView : UIViewController{
id<LoginWebViewDelegate> loginDelegate;
..
}
@property (nonatomic, assign) id<LoginWebViewDelegate> loginDelegate;
..
-(IBAction)dismiss;
..
在我的 .m 文件中,我合成了 loginDelegate 并实现了解除操作,当我按下按钮时它已被激活。
-(IBAction) dismiss
{
NSLog(@"Button Pressed!");
[loginDelegate updateFromModalView];
}
接下来在我的 rootViewController 的接口中我添加了<LoginWebViewDelegate> & 这里是我实现中的操作:
-(void) updateFromModalView
{
[modalView dismissModalViewControllerAnimated:YES];
NSLog(@"Reloading Data");
[dataController readPlist];
[dataTable reloadData];
[dataTable beginUpdates];
[dataTable deleteSections:[NSIndexSet indexSetWithIndex:0] withRowAnimation:YES];
[dataTable insertSections:[NSIndexSet indexSetWithIndex:0] withRowAnimation:YES];
[dataTable endUpdates];
}
方法 updateFromModalView 永远不会被调用。我错过了什么?
【问题讨论】:
标签: iphone objective-c delegates protocols