病情描述:

  1. viewController创建的时候勾选了xib,然后在显示的时候调用了如下语句:

         MTDetailDealViewController *detailController = [[MTDetailDealViewController alloc]init];
    detailController.deal = [self.deals objectAtIndex:indexPath.item];
    [self presentViewController:detailController animated:YES completion:nil];
  2. 发现界面根本没有按照数据源发生改变

病情原因:

  1. 将viewController的几个生命周期关键方法进行打印,发现:
    
             2016-04-20 01:26:44.369 MTHD[6384:380078] -[MTDetailDealViewController initWithNibName:bundle:](114):
    2016-04-20 01:26:44.370 MTHD[6384:380078] -[MTDetailDealViewController init](99):
    2016-04-20 01:26:44.370 MTHD[6384:380078] -[MTDetailDealViewController setDeal:](50):
    2016-04-20 01:26:45.421 MTHD[6384:380078] -[MTDetailDealViewController loadView](95):
  2. 联想起上篇知识总结

    iOS viewController 和 view 的创建消失生命周期总结的第4点

改正如下:

         MTDetailDealViewController *detailController = [[MTDetailDealViewController alloc]init];
//必须得先调用view,否则下面的句子将会无效
[detailController loadView];
detailController.deal = [self.deals objectAtIndex:indexPath.item];
[self presentViewController:detailController animated:YES completion:nil];

再次打印发现:

            2016-04-20 01:29:28.728 MTHD[6452:382311] -[MTDetailDealViewController initWithNibName:bundle:](114):
2016-04-20 01:29:28.729 MTHD[6452:382311] -[MTDetailDealViewController init](99):
2016-04-20 01:29:28.983 MTHD[6452:382311] -[MTDetailDealViewController loadView](95):
2016-04-20 01:29:28.983 MTHD[6452:382311] -[MTDetailDealViewController setDeal:](50):

设置ViewController 数据源无法改变view的更多相关文章

  1. iOS13适配/黑暗模式的适配/KVC访问私有属性/模态弹窗ViewController 默认样式改变 /LaunchImage即将废弃/蓝牙的权限申请/推送Device Token适配/UIKit 控件变化/StatusBar新增样式

    目录 1. KVC访问私有属性 2. 模态弹窗ViewController 默认样式改变 3. 黑暗模式的适配 4. LaunchImage即将废弃 5. 新增一直使用蓝牙的权限申请 6. Sign ...

  2. loaded the "ViewController" nib but the view outlet was not set.'

    错误代码: *** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: '-[U ...

  3. 三种方式设置特定设备UWP XAML view

    开发者可以设置UWP特定设备xaml view,在桌面,手机,Iot,这个对于设置对不同设备的不同屏幕有用.我们可以使用RelativePanel,VisualStateTriggers,但是这样我们 ...

  4. 在Storm的Toplogy中设置多数据源Spout

    上代码:主要看main方法中的设置.   如下代码是一般情况下的设置方法...Trident中设置多数据源看对应的博客总结 /** * 指定多个数据源 * 数字累加求和 * 先添加storm依赖 */ ...

  5. Android 在onActivityResult()中设置图片setImageResource(resId) 或者改变view属性,不成功的解决办法

    如果试验过的朋友就会发现,在onActivityResult()中设置这些属性,好像都不工作,虽然我死磕一番还是不知道具体原因,我直接默认它可能就是不能在里面设置,所以就只能在其他地方设置,幸好发现A ...

  6. 通过通知监听键盘的状态来改变View的位置

    #import "ViewController.h" @interface ViewController ()<UITextFieldDelegate>{    UIV ...

  7. js 实现angylar.js view层和model层双绑定(改变view刷新 model,改变model自动刷新view)

    近段时间研究了下angular.js 觉得它内部实现的view和model层之间存在很微妙的关系,如下图 如上图说的,view的改变会update 数据层model, 数据层会update视图层vie ...

  8. iOS开发-设置在使用NavigateController时View的顶部位置

      最近我在开发中遇到了一个问题,在使用NavigationController时内部的ViewController的View总是与屏幕顶部对齐,而我们有时候不需要这种效果: 在开发过程中,我们可能会 ...

  9. weblogic 优化设置 http://wenku.baidu.com/view/c42e7a5bbe23482fb4da4cf2.html

    引自:http://wenku.baidu.com/view/c42e7a5bbe23482fb4da4cf2.html

随机推荐

  1. 学习Swift -- 构造器(上)

    构造器(上) 构造过程是为了使用某个类.结构体或枚举类型的实例而进行的准备过程.这个过程包含了为实例中的每个存储型属性设置初始值和为其执行必要的准备和初始化任务. 构造过程是通过定义构造器(Initi ...

  2. Junit4 架构设计系列(1): Request,ClassRequest 和 RunnerBuilder

    Overall Junit的成功已不言而喻,其广泛应用于单元测试,测试驱动开发领域.大量的工具,IDE都集成了JUnit,著名的有Maven,Ant,Eclipse,甚至像Google SDK提供的A ...

  3. MFC 之ActiveX控件学习

    本文将介绍ActiveX控件的应用与工作原理,读者可以把ActiveX控件看成一个极小服务器的应用程序,它不能独立运行,必须要嵌入到容器程序中与容器一起运行,就像电脑主机中的显卡,它自己在电脑硬件系统 ...

  4. MFC学习指南大纲

    最近一直在做MFC的项目,顺便学习一下以下MFC核心知识吧: 大纲: 1. 消息队列 2. send message 3. post message 4. 面向对象编程 5. 指针 一个一个来学习哈.

  5. bzoj 2818: Gcd 歐拉函數

    2818: Gcd Time Limit: 10 Sec  Memory Limit: 256 MBSubmit: 1633  Solved: 724[Submit][Status] Descript ...

  6. Party

    hdu3062:http://acm.hdu.edu.cn/showproblem.php?pid=3062 题意:中文题. 题解:很明显的2-sat.然后要深刻理解命题和逆否命题.如这一题,c1,c ...

  7. scanf(),fscanf的详解

    我们这里只讨论fscanf(或者scanf)的格式,因为这些细节在其他贴里并没有涉及,阅读此文,你可以少走一些弯路.只讲结果,深层原因并不分析. FILE *pFile:float x1; char ...

  8. Java位运算在程序设计中的使用:位掩码(BitMask)

    在Java中,位运算符有很多,例如与(&).非(~).或(|).异或(^).移位(<<和>>)等.这些运算符在日常编码中很少会用到. 在下面的一个例子中,会用到位掩码( ...

  9. bzoj3124

    很好的一道treedp,当然也挺烦的首先不难想到先求出一个直径,然后穷举每条边,看他删除之后直径大小是否会变,变了的话就是必须经过的边下面我们就要想怎么优化,本人语言表达略差,还是配合程序说吧. ty ...

  10. POJ 1503 Integer Inquiry 简单大数相加

    Description One of the first users of BIT's new supercomputer was Chip Diller. He extended his explo ...