在推送视图控制器时,我如何同时传递数据(例如 "asdf":123)?您应该向 NSBundle 添加对象吗?
请注意,这不是通过 NSBundle 传递数据的正确方式。相反,您可以使用视图控制器之间的属性来传递数据。首先,在发送视图控制器时,设置其属性。接下来,在接收视图控制器中访问该属性来检索数据。
在推送视图控制器时,我如何同时传递数据(例如 "asdf":123)?您应该向 NSBundle 添加对象吗?
MyViewController * myVC = [[MyViewController alloc] initWithNibName:nil bundle:nil];
myVC.someProperty = someValue; // Pass your data here
[self.navigationController pushViewController:myVC animated:YES];
并且在你的MyViewController
类中:
.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"
}
我不认为你可以,但是当然你可以将相关的属性或方法添加到你的ViewController类中,并在推送之前使用它们。
NSBundle
和Android的Bundle
混淆了,但它们没有关联,也不执行类似的任务。Clafou建议通过方法和属性传递数据是正确的。