本文主要是介绍【TabBar嵌套Navigation案例-推送和提醒界面的内容 Objective-C语言】,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
一、使用兑换码这个页面,看一下示例程序
1.当我点击这个使用兑换码Cell的时候,我要跳到另一个页面,
我要跳到一个控制器,这是一个普通的控制器,然后呢,这个页面啊,怎么着来做,首先,我要点击这个Cell,做一些事情,那我肯定要有它的点击事件,
这是第一,然后呢,接下来啊,我先来写,一会儿我们再来去说,我们先来用普通的正常的方式,大家都熟悉的方式,先来写,首先,在这个里边,我们说,要找到这个使用兑换码的TableView的点击事件,那肯定是有一个代理方法,叫做didSelectRowAtIndexPath,
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{
}
// 点击cell调用
接下来啊,只要我一点,它就会执行这个方法,然后,我现在,想干什么,如果我点击的是第一个Cell,
我要跳转到使用兑换码控制器,然后呢,我可以去判断,你这个indexPath的section == 0,row也 = = 0,的时候,我要跳到兑换码里边,
我先这样来写死了啊,
if(indexPath.section == 0 && indexPath.row = = 0){
}
相当于你点击的是使用兑换码,那这个时候,我要跳转到使用兑换码控制器,我肯定是调用当前的这个控制器里边的navigationController,然后,再去push,那么,首先,我要跳到哪一个控制器,我要先有这个紫色的控制器才行,
所以,我在这个里边,新建一个,我在我的彩票文件夹里面的Controller文件夹的下边,新建一个文件夹,
这个文件夹,就是Setting,
我建这么一个Setting的文件夹,把它拖到项目里,
待会儿呢,我把这个什么使用兑换码控制器,
或者它里面的控制器,我都放到这个文件夹里面,然后呢,在这个Setting文件夹里,New一个File,
然后,Source,
继承的是UIViewController,然后呢,叫做HMRedeemController,
然后呢,直接给这个控制器设置一个紫色的背景颜色,
self.view.backgroundColor = [UIColor purpleColor];
好,然后呢,接下来,我需要做的,就是说,在Setting里面,跳到这个HMRedeemController,使用兑换码的控制器,
需要去创建,导入一下头文件,
// 使用兑换码
HMRedeemController *vc = [[HMRedeemController alloc] init];
好,init完了以后,
[self.navigationController pushViewController:vc animated:YES];
command + R,点一下使用兑换码,
跳转,
就跳到这个紫色的控制器了,那,接下来,还有一个问题,假如说,我想点到推送和提醒,我要跳到另外一个控制器,不叫Redeem了,假如说,叫Redeem1,然后,
然后,摇一摇机选,点击以后,跳到Redeem2,然后,声音效果,点击以后,跳到Redeem3,好,我们说,你每一个Cell,又可能跳到不同的控制器,所以呢,我不希望在这儿,写死了,
所以,我应该把你跳转到的那个控制器,当作一个Key,放到plist当中,
好,所有的东西,只要你是某一个Cell,跟另外一个Cell不一样了,那么你都可以考虑去往plist里面去塞,
看起来,你添加了很多东西,但是,你的代码,只需要写一套,以后改起来的话,会很方便,
2.好,然后,这个里边,我们要写什么,我们说,这个控制器的类型,你已经有了,我们要去传,跳转到的这个控制器的类型,
这个我们要去传,跳转到的这个控制器的这个字符串,待会儿,我也要把它转化成类型,再去alloc-init,
好,所以呢,我们这个里边,我们来到这个plist里边,首先,找到使用兑换码的这个cell,
我现在想点击这个Cell的时候,跳到某一个控制器,我给它配一个Key,叫做targetVC,
叫什么都可以,然后呢,值是什么,HMRedeemController,
是你要跳转到的控制器的名字,然后呢,接下来,我只需要在Setting里面,只要我去,
只要我去点击,
不管是谁,如果,你有这么一个targetVC这么一个Key,我就把它给你创建一个控制器对象,然后再去push,就可以了,
在这个里边,我们可以判断一下,
if(item)
好,我们现在好像还没有item,还没有Cell的信息,但是,indexPath都给你了,
拿item还不容易,好,首先呢,获取组,
// 获取组
// 获取所有的Cell
// 获取当前的Cell信息
都是这三步啊,
// 获取组
NSDictionary *group = self.groups[indexPath.section];
// 获取所有的Cell信息
NSArray *items = group[@“items”];
// 获取当前的Cell信息
NSDictionary *item = items[indexPath.row];
好,然后,我们去判断一下,如果你的item,有这么一个targetVC的Key,并且,你的这个Key,有值,
if(item[@“targetVC”] && [item[@“targetVC”] length] > 0){
}
好,if条件,能看明白吗
这篇关于【TabBar嵌套Navigation案例-推送和提醒界面的内容 Objective-C语言】的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!