Khi đẩy một bộ điều khiển xem, làm cách nào để truyền dữ liệu dài với nó (chẳng hạn như "asdf": 123)? Bạn có phải thêmObjects vào NSBundle không?iOS - chuyển dữ liệu sang bộ điều khiển xem được đẩy
6
A
Trả lời
16
MyViewController * myVC = [[MyViewController alloc] initWithNibName:nil bundle:nil];
myVC.someProperty = someValue; // Pass your data here
[self.navigationController pushViewController:myVC animated:YES];
Và trong lớp MyViewController
của bạn:
.h
@interface MyViewController : UIViewController
@property (nonatomic, strong) NSString * someProperty;
@end
.m
@implementation MyViewController
- (void)viewDidLoad {
[super viewDidLoad];
// your data has been set
// self.someProperty is equal to "some value"
}
1
Tôi không tin rằng bạn có thể, nhưng tất nhiên bạn có thể thêm các thuộc tính hoặc phương pháp có liên quan vào lớp ViewController của bạn và sử dụng những thứ này trước khi đẩy nó.
+1
Khó hiểu bởi các downvotes, như những gì tôi đã viết là chính xác những gì các câu trả lời chấp nhận trong mã ... – Clafou
0
No. Bạn có thể đang cân bằng NSBundle
với Android Bundle
, nhưng chúng không liên quan và không thực hiện các tác vụ tương tự. Clafou là đúng để đề xuất truyền dữ liệu thông qua các phương thức và thuộc tính.
hoặc bạn sẽ làm gì? – KaiserJohaan