问题备忘录

来源:互联网 发布:http js.411an.com 编辑:程序博客网 时间:2024/05/29 12:50

故事版中响应图片点击事件的方式不像常规的controls,类似于:text、fields、buttons、直接弄一个action的outlet就可以。而labels, image views这些元素需要添加手势识别器:gesture Recognizer才可以。

ios工程图片选择器报错:this class is not key value coding-compliant for the key selectImageFromPhotoLibrary.’怀疑还是像昨天的那种故事版中存在无效的链接,逐一检查。经过检查果然是多了一个outlets,正确的应该只有一个action。

发现手势识别器无法使用,经过不断的检查也没发现问题,网上查找解决方案,后来发现是图片我删除了,还原之后之前设置的user interaction enabled选项取消了。重新设置了一下。设置完就好了,整体比较流畅。
这里需要注意一下,这个问题经常会遇到:labels image views 等元素如果需要设置事件则需要开启user interacion,故事板中默认是不开启的。



使用代码添加和控制在storeboard中的view,原来我理解的方式是,要么使用代码创建各种界面,或者使用xib来组装,要么使用故事版来画,而现在了解到了一种新方式,再故事版中画,然后给他绑定到一个自定义的view上,这样就可以让代码和故事版结合起来,使用代码控制,使用故事版制作效果,解决了原来我思维里觉得故事版死板而代码写又太费劲的问题。很不错。


2015 1017 新增:


自定义view在复用的时候,一定不要忘记根据场景来设定User Interaction Enabled 
在viewcontrel 获取cell的时候名字是iderfer 不是name

as! 用来强制类型转换,AS?是可能失败的,感叹号则不允许失败,否则会crash
tableviewcontroller中可以直接使用tableView代表当前的tableview.


swift 中赋值表达式的值就是这个变量,所以类似于 if let meal = sdf{}
这种语句当sdf为0、nil、false时 不进入if,其他情况进入IF。


遇到无法关闭当前viewcontroller的问题,纠结了半天,各种代码比对和检查都没有发现问题,很奇怪,不知道是不是故事办的问题,重新画了两遍,发现还是这个问题,把show改成present modal之后也还是不行,最终把代码切换到windows上使用对比工具进行比对发现presentedViewController和presentingViewController这俩的区别。。。无语。。。


代码里可以直接使用navigationItem.leftBarButtonItem = editButtonItem()来添加edit按钮,也可以再故事版中做。
类名字后面冒号跟父类,父类逗号之后跟协议的名字。





0 0
原创粉丝点击