你的位置:首页 > 操作系统

[操作系统]【代码笔记】先选择城市,然后,跳转Tabbar


一,效果图。

 

 

 

二,工程图。

三,代码。

ChooseCityViewController.h

复制代码
#import <UIKit/UIKit.h>@interface ChooseCityViewController : UIViewController<UITableViewDelegate,UITableViewDataSource>{  NSMutableArray * dataArray;  UITableView * mTableView;}@end
复制代码

 

ChooseCityViewController.m

复制代码
#import "ChooseCityViewController.h"#import "DetailViewController.h"@interface ChooseCityViewController ()@end@implementation ChooseCityViewController- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil{  self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];  if (self) {    // Custom initialization  }  return self;}- (void)viewDidLoad{  [super viewDidLoad];  // Do any additional setup after loading the view.    //读取plist文件  [self readPlistFile];  //初始化tableView  [self initTableView];  }#pragma -mark -functions-(void)readPlistFile{  dataArray = [[NSMutableArray alloc] initWithCapacity:0];  NSString * path = [[NSBundle mainBundle] pathForResource:@"city" ofType:@"plist"];    NSDictionary * dict = [[NSDictionary alloc] initWithContentsOfFile:path];  NSEnumerator * enumerator = [dict keyEnumerator];  NSString * key;  while (key = [enumerator nextObject]) {    NSDictionary * t = [dict objectForKey:key];        [dataArray addObject:t];  }  NSLog(@"%@",dataArray);}-(void)initTableView{  mTableView = [[UITableView alloc] initWithFrame:self.view.bounds style:UITableViewStylePlain];  mTableView.delegate = self;  mTableView.dataSource = self;  mTableView.autoresizingMask = UIViewAutoresizingFlexibleHeight;  [self.view addSubview:mTableView];}#pragma -UITableViewDelegate-(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{  return [dataArray count];}-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{  static NSString * ID = @"cellID";  UITableViewCell * cell = [tableView dequeueReusableCellWithIdentifier:ID];  if (cell == nil)  {    cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:ID];  }  NSDictionary *dict = [dataArray objectAtIndex:indexPath.row];  cell.textLabel.text = [dict objectForKey:@"city_name"];  return cell;}-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{  NSDictionary * dict = [dataArray objectAtIndex:indexPath.row];  //把所选择的城市保存到本地  [[NSUserDefaults standardUserDefaults] setObject:[dict objectForKey:@"city_id"] forKey:@"city_id"];  [[NSUserDefaults standardUserDefaults] setObject:[dict objectForKey:@"city_name"] forKey:@"city_name"];    //跳转到另一个有tabbar的页面  DetailViewController *detail=[[DetailViewController alloc]init];  [self.navigationController pushViewController:detail animated:NO];}- (void)didReceiveMemoryWarning{  [super didReceiveMemoryWarning];  // Dispose of any resources that can be recreated.}
复制代码