Попробуйте это:
// In your destination controller .h file
@property (nonatomic, copy) NSString *transferStr;
// In your destination controller .m file
@synthesize transferStr;
- (void)viewDidLoad
{
[super viewDidLoad];
self.LabelText.text = self.transferStr;
}
// In your first controller .m file
-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
NSLog(@"prepareForSegue: %@", segue.identifier);
if([segue.identifier isEqualToString:@"returnText"])
{
[segue.destinationViewController setTransferStr:@"New String"];
}
}
Проверено и работает ...
Не забудьте включить файл .h конечного контроллера в ваш первый контроллер.
Проблема, вероятно, в том, что UILabel еще не создается при вызове метода prepareForSegue, поэтому в это конкретное время он равен нулю ...