Почему вы не можете сделать что-то вроде этого:
позволяет сказать, что ключ является String,
1) в вашем ViewControllerB.h добавить
@property (nonatomic, copy) NSString *keyFromParent;
- (id)initWithNibName:(NSString *)nibNameOrNil WithKey:(NSString *)key bundle:(NSBundle *)nibBundleOrNil;
2) в вашем ViewControllerB.m заменить initWithNibName метод с
- (id)initWithNibName:(NSString *)nibNameOrNil WithKey:(NSString *)key bundle:(NSBundle *)nibBundleOrNil{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
self.keyFromParent = key;
}
return self;
}
3) Когда вы представляете ViewControllerB из ViewControllerA сделать это так,
ViewControllerB *controller = [[ViewControllerB alloc] initWithNibName:@"ViewControllerB" WithKey:KEY_FROM_DELEGATE bundle:nil];
[self presentViewController:controller animated:YES completion:nil];
4) Теперь вы можете использовать keyFromParent что значение, передаваемое от ViewControllerA в viewDidLoad метод ViewControllerB
Надеюсь, этот ответ поможет вам!
как вы посылаете ключ делегата ..? – Bonnie
Чтобы передать ключ, вы вызываете какой-либо метод в VCA или просто устанавливаете какое-либо свойство в VCB из VCA ??? –
установить свойство в VCB из VCA и использовать его в методе ViewDidLoad VCB @Anil – user2261777