资深移动开发者
genstrings是苹果推出的一个用于自动从代码的nslocalizedstring等提取生成国际化字符串的工具; xcode的国际化文件方案一直以来都不太智能,我记得很久以前.strings文件库上的修改好像是必然会引发冲突的(别人在你修改过程中提交); 在代码中写完国际化的字符串还要单独打开.strings文件进行编辑,比较麻烦。
最近正式在线上项目中集成了jspatch进行热修复,这里做一个简单的总结。 工具篇: 首先,用xcode来编辑js非常困难,基本上没有缩进,完全需要手写;经过研究发现使用 Sublime text3 结合 jsformat 插件,可以很好的编辑js脚本。
http://blog.ibireme.com/2015/11/12/smooth_user_interfaces_for_ios/
别人写的一个基于textkit的封装: https://github.com/molon/MLLabel 基于textkit实现的支持富文本的label, 可实现自定义emoji表情等
http://www.cocoachina.com/ios/20161109/18007.html
// 1.初始化单例类 AFHTTPSessionManager *manager = [AFHTTPSessionManager manager]; manager.
测试UIViewController 触发UIViewController生命周期中的事件 调用 UIViewController.view, 它会触发 UIViewController.viewDidLoad()。
http://www.jianshu.com/p/358535119e9b
https://www.raywenderlich.com/139064/rwdevcon-2016-inspiration-talk-embracing-failure-janie-clayton
cordova插件是其设计理念的精髓部分,创建并使用自定义插件也是一件比较容易的事。但在这个过程中也容易进入一些误区或者有一些错误的理解,下面从笔者实际开发中遇到的问题出发,对其中的一些注意点和重要概念进行适当的阐述。
https://github.com/inket/update_xcode_plugins https://github.com/fpg1503/MakeXcodeGr8Again xcode8增加了安全相关的检查,更细点说它从根源上屏蔽了插件的工作,xcode插件在xcode8上统统不能执行。
https://developer.apple.com/library/content/samplecode/LargeImageDownsizing/Introduction/Intro.
http://xclient.info/
http://www.jianshu.com/p/5ccde5f22a17
http://blog.csdn.net/assholeu/article/details/45897035
http://www.cnblogs.com/yokoboy/archive/2012/12/06/2806132.html
http://www.jianshu.com/p/bf5e8a9761f5 http://blog.sina.com.cn/s/blog_4e0f66b80100m73i.html
http://www.cocoachina.com/programmer/20160823/17407.html
http://my.oschina.net/kevinair/blog/192829
http://blog.csdn.net/daiyelang/article/details/40989389
http://blog.csdn.net/wuhenliushui/article/details/20038819/
我们需要尽力避免任何形式的闯红灯行为。 大部分的路口都存在右转道,而右转道往往是不禁行的。 一旦误闯红灯,在确保行车安全的情况下,直接绕道右转,而不是直接驶过路口。
其中部分代码为汇编;由此可见oc的runtime的灵活性和能力。此代码仅供参考 // ----------------------------------------------------// Runtime injection start.
http://www.jianshu.com/p/82a3b9a96d29
http://blog.csdn.net/zhangao0086/article/details/45622875
http://www.jianshu.com/p/73be6d0e152f
终端输入: /usr/libexec/PlistBuddy -c "Print CFBundleIdentifier" /Users/achen/Desktop/testBundle/testBundle/Info.plist /usr/libexec/PlistBuddy 是系统工具的命令,用于操作plist文件。
组件化是什么? 有人认为这是一种比较高大上的技术(因为大公司都在搞);但我觉得这样表达不太合适。 打个简单的比方,一个公司刚开始有几个人,大家可能分工也不那么明确,有事就商量着来。
http://blog.sina.com.cn/s/blog_6ae8b50d0102w7tw.html
http://blog.csdn.net/smking/article/details/22221441
http://www.cocoachina.com/programmer/20160720/17125.html
http://blog.csdn.net/caryaliu/article/details/49284185 需要在被观察的属性所在的类里面实现一些方法,对开发者不友好,一般不建议使用,这里mark一下仅供参考。
http://www.cnblogs.com/ios8/p/ios-archive.html
http://www.cocoachina.com/ios/20160329/15773.html
前言:这篇文章是笔者在项目中对布局技术进行技术选型和应用的相关介绍,供大家参考。 Question1:什么是autoLayout? Answer1: autolayout是苹果从iOS6开始推出的旨在优化、简化UI布局相关工作的新框架,其理念是抽象出约束的概念,将其作用于view,而不再需要手动设置其frame。
注:本文根据个人的实践和理解写成,若有不当之处欢迎斧正和探讨! addChildViewController是一个从iOS5开始支持的api接口,相关的一系列的接口是用来处理viewcontroller中嵌套显示其他viewcontroller的场景的。
http://www.cocoachina.com/swift/20160701/16894.html
在老项目工程中使用cocoapods,可能会报这个错误:library not found for -lPods . 导致这个错误可能有两个原因,这两个原因在编译过程中都是有蛛丝马迹可循的。
步骤1:正常创建1个新项目 步骤2:选中默认创建的viewcontroller 步骤3:选择最上面工具栏的editor->embedin->navigation controller.
例: #if __has_include()#import #else#import "TestHead.h"#endif
关于kvo,kvo能做什么? kvo作为cocoa框架的重要特性之一,在底层框架中被大量使用。在特定的场合使用该特性往往能够带来难以想象的好处,让整个方案变得相当简洁和优雅。
代码摘录自YYKit:https://github.com/ibireme/YYKit /** Add this macro before each category implementation, so we don't have to use -all_lo...
https://developer.apple.com/library/ios/documentation/General/Conceptual/DevPedia-CocoaCore/Accessibility.html
坑1. retain cycle问题。 在一个对象中使用循环执行的nstimer时,若希望在对象的dealloc方法中释放这个nstimer,结局会让你很失望。 这个timer会导致你的对象根本不会被释放,所以不会调用dealloc方法,同时这个nstimer也永远不会停止。
https://www.dnspod.cn/httpdns/guide https://www.dnspod.cn/misc/D%2B免费版本接口说明.pdf 最简单的get接口去请求dnspod提供的ip地址,请求格式为: "http://119.29.29.29/d?dn=apis.baidu.com." 不要遗漏最后的那个点!!! 即可返回一个字符串表示的ip地址列表,中间用英文逗号分隔。
http://www.jianshu.com/p/99a132609628
http://www.cocoachina.com/design/20160518/16297.html
http://blog.csdn.net/zhibudefeng/article/details/7920686
http://blog.csdn.net/ruglcc/article/details/50148375 说明:iOS程序启动时总会调用application:didFinishLaunchingWithOptions:,在此之前还会调用application:willFinishLaunchingWithOptions.
http://www.cocoachina.com/programmer/20160513/16243.html