你可以用你喜欢的任何格式存储数据,例如XML或JSON是好的,主要的是考虑一个舒适的结构,如index = data
。您可以从以前的VC将数据传递到下一个,并跟踪其指标
然后你就可以按如下方式使用它:
根视图控制器具有导航控制器
#import "ViewController.h"
#import "DetailViewController.h"
@interface ViewController()
@property (strong, nonatomic) IBOutlet UIButton *navButton;
@end
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
}
- (IBAction)navigate:(UIButton *)sender
{
DetailViewController *vc = [DetailViewController new];
vc.prevIndex = 0;
vc.dataString = @"data";
vc.view.backgroundColor = [UIColor whiteColor];
[self.navigationController pushViewController:vc animated:YES];
}
@end
DetailViewController - 用于显示子类别/物品
DetailViewController。^ h
@interface DetailViewController : UIViewController
@property (nonatomic, assign) NSInteger prevIndex;
@property (nonatomic, strong) NSString *dataString;
@end
DetailViewController.m
#import "DetailViewController.h"
@implementation DetailViewController
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view.
UIButton *button = [[UIButton alloc] initWithFrame:CGRectMake(10, 100, 0, 0)];
[button setTitle:[NSString stringWithFormat:@"navigate from %li", (long)_prevIndex] forState:UIControlStateNormal];
[button setTitleColor:[UIColor blackColor] forState:UIControlStateNormal];
[button addTarget:self action:@selector(navigate) forControlEvents:UIControlEventTouchUpInside];
[button sizeToFit];
[self.view addSubview:button];
}
- (void)navigate
{
DetailViewController *vc = [DetailViewController new];
vc.prevIndex = _prevIndex + 1;
vc.dataString = [NSString stringWithFormat:@"data %li", (long)vc.prevIndex];
vc.view.backgroundColor = [UIColor whiteColor];
[self.navigationController pushViewController:vc animated:YES];
}
@end