IOS实现选择城市后跳转Tabbar效果

这篇文章主要为大家详细介绍了IOS实现选择城市后跳转Tabbar效果的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了IOS选择城市后跳转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.
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持得得之家。

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

这篇文章给大家分享了如何利用iOS实现图片六边形阴影的效果,文中给出实现的示例代码,对大家的理解和学习很有帮助,有需要的可以参考借鉴,下面来一起看看吧。
刚刚进入iOS开发行业,发现开发中要用到大量的block回调,由此可见它的重要性。本文主要讲的是 Block 回调的使用,以及 Block 是如何实现这种神奇的回调两部分来讲的,下面来一起看看吧。
很多朋友都反馈,发现了iOS9升级到iOS10推送功能不正常的问题,所以这篇文章总结了一下要点,亲们可以根据以下步骤,逐步排查问题,也可以逐步实现iOS10的推送功能。下面来一起看看吧。
在开发iOS的时候经常需要获取当前View所在的控制器,下面小编给大家分享个方法,文章给出了示例代码,对大家的学习和理解很有帮助,下面来一起看看吧。
这篇文章给大家分享了一种利用iOS实现只有底部边框线的输入框,其实这个效果也挺常见的,本文给出了示例代码,下面来看看如何实现这种效果。
这篇文章主要介绍了iOS 委托与文本输入(内容根据iOS编程编写) 的相关资料,需要的朋友可以参考下