自定义一个TypesItem类,继承自NSObject,含有三个变量(可自定义添加多个)
TypesItem.h
- #import <Foundation/Foundation.h>
- @interface TypesItem : NSObject<NSCopying>
- {
- NSString *type_id;
- NSString *type_memo;
- NSString *type_name;
- }
- @property (nonatomic,copy) NSString *type_id;
- @property (nonatomic,copy) NSString *type_memo;
- @property (nonatomic,copy) NSString *type_name;
- @end
TypesItem.m文件中,除了要synthesize这三个变量之外
- @synthesize type_id,type_memo,type_name;
还要实现NSCopying协议方法
- (id)copyWithZone:(NSZone *)zone
- - (id)copyWithZone:(NSZone *)zone
- {
- TypesItem *newItem = [[TypesItem allocWithZone:zone] init];
- newItem.type_name = self.type_name;
- newItem.type_id = self.type_id;
- newItem.type_memo = self.type_memo;
- return newItem;
- }
页面间传值,假设A->B,A中的TypeItem的值要传到B中
在B中.h文件写上代码
- @property(nonatomic,copy) TypesItem *selectedItem;
在B.m文件中
- @synthesize selectedItem;
在A.m中跳转到B之前加上代码
- BViewController *BVC = [[[BViewController alloc] initWithNibName:@"BViewController" bundle:nil] autorelease];
- // item为TypeItem类型,且不为空
- BVC.selectedItem = item;
- [self.navigationController pushViewController:BVC animated:YES];
PS:页面间传值时,此处的BVC.selectedItem中的BVC一定与push过去的BVC保持一致,否则push到B界面中的selectedItem值必定为null。