自定义viewcontroller委托不工作
我有我的自定义委托问题,不知道为什么不working.i湾将委托传递给主视图,所以它会自动推入到一个详细信息视图添加新的logging后。
不知道我错过了什么。我正在做所有的故事板和iOS 5的联动。
感谢您的关注和赞赏所有评论
addnote.h
#import <UIKit/UIKit.h> #import "memoView.h" @protocol addNoteDelegate; @interface addNote : UIViewController { IBOutlet UITextField *memoNameTextField; IBOutlet UITextField *memoCommentsTextField; id <addNoteDelegate> delegate; } @property (nonatomic,assign) id <addNoteDelegate> delegate; - (IBAction)done:(id)sender; - (IBAction)cancel:(id)sender; @end @protocol addNoteDelegate <NSObject> -(void)addNoteDidFinish:(addNote *)controller; -(void)addNoteDidCancel:(addNote *)controller; @end
addnote.m
-(IBAction)add:(id)sender { [[self delegate] addNoteDidFinish:self]; }
mainview.h
#import <UIKit/UIKit.h> #import "addNote.h" @interface mainView : UITableViewController<NSFetchedResultsControllerDelegate, addNoteDelegate> { } @property (nonatomic, retain) NSArray *memoInfo; @property (nonatomic, retain) NSFetchedResultsController *fetchedResultsController; @property (nonatomic, retain) NSManagedObjectContext *ObjectContext; -(IBAction)backToMain:(id)sender; - (IBAction)addNote:(id)sender; @end
mainView.m
-(IBAction)addNote:(id)sender { addNote *addingNote = [[addNote alloc] init]; addingNote.delegate = self; [self performSegueWithIdentifier:@"addNote" sender:self]; } - (void)addNoteDidFinish:(addNote *)controller{ //PUSH TO NEXT VIEW [[self navigationController] dismissModalViewControllerAnimated:YES]; }
@protocol addNoteDelegate <NSObject> -(void)addNoteDidFinish:(addNote *)controller; -(void)addNoteDidCancel:(addNote *)controller; @end @interface addNote : UIViewController { IBOutlet UITextField *memoNameTextField; IBOutlet UITextField *memoCommentsTextField; id <addNoteDelegate> delegate; } @property (nonatomic,assign) id <addNoteDelegate> delegate; - (IBAction)done:(id)sender; - (IBAction)cancel:(id)sender; @end
和:
[self dismissModalViewControllerAnimated:YES];
不:
[[self navigationController] dismissModalViewControllerAnimated:YES];
似乎我错过了一个function:
- (void) prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender { if ([[segue identifier] isEqualToString:@"addNote"]) { UINavigationController *navController = [segue destinationViewController]; addNote *addingNote = (addNote *)navController.topViewController; addingNote.delegate = self; } }
- NSFetchedResultsChangeUpdate而不是NSFetchedResultsChangeDelete
- 节点组的位置在SCNNode.runAction的开头重置
- 使用iPhone / iPod上的OpenAL进行距离衰减
- Alamofire无法正常工作 – Tuple发行不同数量的元素
- ObjectiveC类别不被导入,但仍然运行代码
- 在不离开家的情况下录制世界各地的视频。
- 通过JavaScript打开应用程序(iOS / Android),并将回退redirect到App / Play商店(2016年版)
- 当设备方向改变时,黑条出现在UIWebview中
- 辅助function标识符在iOS Simulator的辅助function检查器中不可见