У меня есть один tabcontroller, и он имеет два сегмента. Один из них - UserInfo, другой - UserAvatar. Как только пользователь поместит в свою информацию, затем нажмите кнопку «Готово» и перейдите в главное меню, или пользователь может также выбрать свой аватар профиля, а затем нажать кнопку «Щелчок», а затем перейти в mainView. Однако, несмотря на то, что я запускаю код с режимом отладки, он запускается в завершенную кнопку, но в моем представлении userinfo метод delegeta не запускается!Метод делегата не запускается - iOS
в моем главном файле заголовка, я объявил мой протокол выглядит следующим образом:
@protocol MyUserInfoAvatarViewControllerDelegate <NSObject>
@required
-(void)userInfoEditingDone:(id)sender;
@end
@protocol MyUserInfoSettingsViewControllerDelegate <NSObject>
@required
-(void)userInfoEditingDone:(id)sender;
@end
в моем файле main.m, мой метод делегата
- (void)userInfoEditingDone:(id)sender {
NSLog(@"Hello");
}
MyUserInfoAvatarViewController.h
#import <UIKit/UIKit.h>
#import "NEATMainViewController.h"
@interface UserInfoAvatarViewController : UIViewController <ThumbImageViewDelegate > {
id __unsafe_unretained flipDelegate;
}
@property (nonatomic,unsafe_unretained) id <MyUserInfoAvatarViewControllerDelegate>
flipDelegate; в следующем отвечая в MyUserInfoAvatarViewController.m
- (IBAction)doneButtonPressed:(id)sender {
// Tell the root view to flip back over to the main view
[self.flipDelegate userInfoEditingDone:self];
}
MyUserInfoSettingsViewController.h
#import <UIKit/UIKit.h>
#import "NEATMainViewController.h"
@interface UserInfoSettingsViewController : UIViewController {
id __unsafe_unretained flipDelegate;
}
@property (nonatomic,unsafe_unretained) id <MyUserInfoSettingsViewControllerDelegate> flipDelegate;
в следующем не называет мой метод делегата .. MyUserInfoSettingsViewController.m
- (void)viewDidLoad {
[super viewDidLoad];
UIBarButtonItem *btn = [[UIBarButtonItem alloc] initWithTitle:@"Done" style:UIBarButtonItemStyleBordered target:self action:@selector(done:)];
self.navigationItem.rightBarButtonItem = btn;
}
- (void)done:(id)sender {
// Tell the root view to flip back over to the main view
[self.flipDelegate userInfoEditingDone:self];
}
Как установить делегат? –
Где вы устанавливаете делегат & Где вы его определяете? – Mani
Не могли бы вы сделать это более понятным? – casillas