我遇到了一个问题,我看不出问题所在。我试图将一个简单的NSString
传递给一个子变量,但它仍然作为null
返回,即使我使用NSLog
来显示变量中有一个字符串。iOS不会将变量传递给子视图?
变量finalDate
不会传递给子视图。
父视图
ChangeTimeViewController *ChangeTimeView = [[ChangeTimeViewController alloc] init];
NSLog(@"%@", date);
ChangeTimeView.finalDate = date;
[ChangeTimeView setDelegate:self];
[self.navigationController pushViewController:ChangeTimeView animated:YES];
子视图.H
#import <UIKit/UIKit.h>
@protocol ChangeTimeViewControllerDelegate;
@interface ChangeTimeViewController : UIViewController <UIPickerViewDelegate, UIPickerViewDataSource>
@property (nonatomic, weak) id <ChangeTimeViewControllerDelegate> delegate;
@property (nonatomic) NSString *enteredTime;
@property (nonatomic, strong) UIPickerView *UIPicker;
@property (nonatomic, strong) NSString *finalDate;
@end
@protocol ChangeTimeViewControllerDelegate <NSObject>
- (void)childTimeViewController:(ChangeTimeViewController *)viewController didChooseValue:(NSString *)string;
@end
子视图.M
NSLog(@"%@", self->finalDate);
可我知道哪种方法你把你的日志 – karthik
一点。你的变量名'date'和'finalDate'非常混乱,因为它们是'NSString'而不是'NSDate'的实例。与'enteredTime'相同。你的变量名称应该告诉我尽可能多的关于它们的信息。 (另外,不要使用大写字母来表示变量名称“UIPicker”应该像“myDatePicker”或其他)。 – Fogmeister