方法一: 点击tableviewCell后,按住ctrl键拖拽至想要跳转的新的界面。这样跳转的结果是,点击tableview中的任何一行都会跳转到新的界面。可以通过控制cell的 属性 userInteractionEnabled = NO,来实现不跳转。

方法二:点击原来界面的controller后,按住ctrl键,拖拽到新的界面。这样跳转的结果是,点击tableview中的任何一行后,需要实现代理方法-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath,在其中执行方法

    [self performSegueWithIdentifier:@"segueIdentifer" sender:nil]来跳转到指定segueIdentifier的新界面。然后实现函数-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender,并且在其中为新跳转的界面初始化数据。

以下,摘自别人的博客:

Segue 的有条件跳转

一、定义一个对应UITableViewCell 的Segue,如果是UITableViewCell 在显示的时候已经确定是否可以通过Segue 跳转,则在 cellForRowAtIndexPath 方法中可以:

if(indexPath.row==)

cell.userInteractionEnabled=NO;

如此,第四行单元不能跳转(由于不响应用户交互事件)。

二、定义一个对应ViewController 的Segue,在 didSelectRowAtIndexPath 方法中根据条件调用 performSegueWithIdentifier

三、定义一个定制的 Segue:

@interface MyCustomSegue : UIStoryboardSegue 
@end

重载以下方法:

@implementation MyCustomSegue
- (id)initWithIdentifier:(NSString *)identifier source:(UIViewController *)source destination:(UIViewController *)destination

{
    UIStoryboard *storyBoard= [UIStoryboard storyboardWithName:@"MainStoryboard_iPhone"bundle:nil];
    UIViewController *viewController = [storyBoard 
    instantiateViewControllerWithIdentifier:@"testIdentifier"]; 
    // MyViewController* viewController= [[MyViewController alloc]initWithNibName:@"MyViewController" bundle:nil]; 
    return [super initWithIdentifier:identifier source:source destination:viewController];
}

- (void)perform 

{
    // if either source or destination is nil, stop
    if (nil == self.sourceViewController || nil == self.destinationViewController) 
       return;
    // return; //No Action. Segue will be cancelled
    UINavigationController *ctrl = [self.sourceViewController navigationController];
    [ctrl pushViewController:self.destinationViewController animated:YES];
}

iOS 学习笔记 五 (2015.03.17)使用storyBoard进行tableview的跳转的更多相关文章

  1. iOS 学习笔记五 【2016年百度地图定位详细使用方法】

    具体介和配置绍在此就不详述了,详情请看百度地图API文档, 在这里具体讲解下,新版百度地图的定位与反地理编码的使用: 1.导入头文件 #import <BaiduMapAPI_Map/BMKMa ...

  2. iOS学习笔记-精华整理

    iOS学习笔记总结整理 一.内存管理情况 1- autorelease,当用户的代码在持续运行时,自动释放池是不会被销毁的,这段时间内用户可以安全地使用自动释放的对象.当用户的代码运行告一段 落,开始 ...

  3. iOS学习笔记总结整理

    来源:http://mobile.51cto.com/iphone-386851_all.htm 学习IOS开发这对于一个初学者来说,是一件非常挠头的事情.其实学习IOS开发无外乎平时的积累与总结.下 ...

  4. IOS学习笔记07---C语言函数-printf函数

    IOS学习笔记07---C语言函数-printf函数 0 7.C语言5-printf函数 ------------------------- ----------------------------- ...

  5. iOS学习笔记06—Category和Extension

    iOS学习笔记06—Category和Extension 一.概述 类别是一种为现有的类添加新方法的方式. 利用Objective-C的动态运行时分配机制,Category提供了一种比继承(inher ...

  6. IOS学习笔记48--一些常见的IOS知识点+面试题

      IOS学习笔记48--一些常见的IOS知识点+面试题   1.堆和栈什么区别? 答:管理方式:对于栈来讲,是由编译器自动管理,无需我们手工控制:对于堆来说,释放工作由程序员控制,容易产生memor ...

  7. iOS 学习笔记七 【博爱手把手教你使用2016年gitHub Mac客户端】

    iOS 学习笔记七 [博爱手把手教你使用gitHub客户端] 第一步:首先下载git客户端 链接:https://desktop.github.com 第二步:fork 大神的代码[这里以我的代码为例 ...

  8. 【opencv学习笔记五】一个简单程序:图像读取与显示

    今天我们来学习一个最简单的程序,即从文件读取图像并且创建窗口显示该图像. 目录 [imread]图像读取 [namedWindow]创建window窗口 [imshow]图像显示 [imwrite]图 ...

  9. iOS学习笔记13-网络(二)NSURLSession

    在2013年WWDC上苹果揭开了NSURLSession的面纱,将它作为NSURLConnection的继任者.现在使用最广泛的第三方网络框架:AFNetworking.SDWebImage等等都使用 ...

随机推荐

  1. LeetCode Shortest Word Distance

    原题链接在这里:https://leetcode.com/problems/shortest-word-distance/ 题目: Given a list of words and two word ...

  2. day01-基础内容

    day01-基础内容 1.Linux:  1)开源的操作系统.免费的    主要用于服务器端,而Java主要是服务器端开发  2)Linux与Windows目录结构的区别:    2.1)文件系统不同 ...

  3. C#反射代码

    Object model=Assembly.Load(“程序集”).CreateInstance(命名空间.类名); object obj2 = Type.GetType("MyClass& ...

  4. DNSPod各个套餐的DNS地址

    DNSPod各个套餐的DNS地址 https://support.dnspod.cn/Kb/showarticle/tsid/178/ DNSPod各个套餐的DNS地址每种域名套餐对应的DNS地址是不 ...

  5. Java多线程 wait, notify 和 notifyAll

    Java的Object类 public class Object { public final native void notify(); public final native void notif ...

  6. shell软件工具设计的原则_转

    随着时间的流逝,人们开发出了一套设计与编写软件工具的原则.在本书用来解决问题的程序中,你将会看到这些原则的应用示例.好的软件工具应该具备下列特点:一次做好一件事在很多方面,这都是最重要的原则.若程序只 ...

  7. boost 1.57.0安装

    一. PC编译安装boost boost是C++的准标准库,其有两种安装方法. 1. ubuntu下,通过sudo apt-get install libboost-all-dev. 2. 通过源码包 ...

  8. ASP: VS2015 + IIS Express 10 学习笔记

    首先搞清楚 ASP 与 ASP.NET 的区别(.asp与.aspx). https://msdn.microsoft.com/en-us/library/ms973813.aspx 环境配置: ht ...

  9. ios-通知简单示例

    通知是一种一对多的信息广播机制,一个应用程序同时只能有一个NSNotificationCenter(通知中心)对象,用来添加通知观察者或者说监听者,以及发送通知. 用的地方是:不同控制器的传值回调.d ...

  10. 查询功能:yum [list|info|search|provides|whatprovides] 参数

    [root@www ~]# yum [option] [查询工作项目] [相关参数] 选项与参数: [option]:主要的选项,包括有:   -y :当 yum 要等待使用者输入时,这个选项可以自动 ...