- 博客(153)
- 收藏
- 关注
原创 删除苹果电脑垃圾文件(转载)
1:禁用SafeSleep休眠模式——能节省出4GB-16GB空间如果想要禁用SafeSleep功能,我们需要在终端中输入下面的命令:sudo pmset -a hibernatemode 0然后定位到/private/var/vm/删除已经存在的sleepimage文件cd /private/var/vm/使用下面的命令删除该文件sudo rm sleepimage...
2017-02-21 14:36:05
455
原创 UIWebView清空缓存
- (void)clearAllUIWebViewData { // Clear the webview cache... [[NSURLCache sharedURLCache] removeAllCachedResponses]; [self removeApplicationLibraryDirectoryWithDirectory:@"Caches"]; ...
2016-07-25 10:03:32
293
原创 响应者链及相关机制总结
转载:http://www.cocoachina.com/ios/20160630/16868.html 实际开发中常见的相关问题在实际开发中,经常会遇到视图没有响应的情况,特别是新手会经常搞不清楚状况。一下是视图没有响应的几个情况:1.userInteractionEnabled=NO;2.hidden=YES;3.alpha=0~0.01;4.没有实现touc...
2016-06-30 14:25:25
187
原创 代码控制以不同屏幕方向打开新页面
UIDevice.currentDevice().setValue(UIInterfaceOrientation.LandscapeLeft.rawValue, forKey: "orientation") http://www.cocoachina.com/ios/20150810/12895.html
2015-09-15 11:46:56
161
原创 自定义导航控制器全屏滑动返回效果
- (void)viewDidLoad { [super viewDidLoad]; // 获取系统自带滑动手势的target对象 id target = self.interactivePopGestureRecognizer.delegate; // 创建全屏滑动手势,调用系统自带滑动手势的target的action方法 UIPanGestur...
2015-09-15 11:45:05
143
原创 requireGestureRecognizerToFail的使用
在 ViewController 中添加了一个 TableView,那么很可能在侧滑返回的时候,先触发了 TableView 的上下滚动。如何优先处理左滑返回?解决办法:if let gestures = navigationController?.view.gestureRecognizers { for recognizer in gestures { ...
2015-09-15 11:40:19
2394
原创 CGContext理解(参考)
CGContext又叫图形上下文,相当于一块画布,以堆栈形式存放,只有在当前context上绘图才有效。iOS有分多种图形上下文,其中UIView自带提供的在drawRect:方法中通过UIGraphicsGetCurrentContext获取,还有专门为图片处理的context,UIGraphicsBeginImageContext函数生成,还有pdf的context等等。 1.一共...
2015-07-17 16:05:29
313
原创 UIView 的 Tint Color总结
如果我们想指定整个App的tint color,则可以通过设置window的tint color。这样同一个window下的所有子视图都会继承此tint color。当弹出一个alert或者action sheet时,iOS7会自动将后面视图的tint color变暗。此时,我们可以在自定义视图中重写tintColorDidChange方法来执行我们想要的操作。有些复杂控件,可以有多个t...
2015-07-14 11:18:52
117
原创 为,早日退休,过上无忧无虑的生活,而奋斗终生
虽然,现在的薪资也算高了,但是离开这份工作,我的生活依然没有保障,这种感觉让我非常地不舒服 为,早日退休,过上无忧无虑的生活,而奋斗终生
2015-07-11 14:43:50
267
原创 CocoaPods Analyzing dependencies更新缓慢
最近使用CocoaPods来添加第三方类库,无论是执行pod install还是pod update都卡在了Analyzing dependencies不动原因在于当执行以上两个命令的时候会升级CocoaPods的spec仓库,加一个参数可以省略这一步,然后速度就会提升不少。加参数的命令如下:pod install --verbose --no-repo-updatepod upda...
2015-07-07 13:38:10
284
原创 app支持64位的一些总结
64-bit运行时环境和32-bit运行时环境主要有以下两点的不同:1:数据类型的改变2:方法调用上的改变整型数据类型的变化如下关于字节对齐的概念可以参考如下链接:http://blog.youkuaiyun.com/21aspnet/article/details/6729724#comments浮点型类型的改变如下:数据类型的改变可能会为我们的程序带来这些影响: 增加...
2015-05-13 19:08:41
1140
原创 Converting Your App to a 64-Bit Binary
https://developer.apple.com/library/ios/documentation/General/Conceptual/CocoaTouch64BitGuide/ConvertingYourAppto64-Bit/ConvertingYourAppto64-Bit.html
2015-05-13 15:40:36
167
原创 iOS工程通用模块介绍
1. MantleMantle 让我们能简化 Cocoa 和 Cocoa Touch 应用的 model 层。简单点说,程序中经常要进行网络请求,请求到得一般是 json 字符串,我们一般会建一个 Model 类来存放这些数据。这就要求我们编写一系列的序列化代码,来把 json 转换为 Model 。这很费时间,容易错,不容易修改。 Mantle 很好的解决了这个问题,而且更易用。 htt...
2015-05-08 10:43:59
137
原创 fatal error: file '/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSi
fatal error: file '/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator8.2.sdk/System/Library/Frameworks/UIKit.framework/Headers/UINibLoading.h'...
2015-04-27 11:43:22
592
原创 使用reveal分析app试图层次结构
Reveal是一个很强大的UI分析工具,与其他几个功能相近的工具(比如PonyDebugger)相比,其最大的特点就是非常直观,用来查看app的UI布局非常方便。其常规用法是将framework集成至Xcode工程中,可参见Reveal的官网http://revealapp.com/1. 打开Xcode工程2. 打开Revel工具,选择Menu->Help->Show Reveal Lib...
2015-02-03 17:28:05
195
原创 KVO&KVC的再次认知
KVO模型中,有两种通知观察者的方式,自动通知和手动通知。顾名思义,自动通知由cocoa在属性值变化时自动通知观察者,而手动通知需要在值变化时调用 willChangeValueForKey:和didChangeValueForKey: 方法通知调用者。为求简便,我们一般使用自动通知。例如:[MyCtrol addObserver:self forKeyPath:@"value" option...
2015-02-02 16:01:38
142
原创 git常用命令
git 常用命令创建复制一个已创建的仓库:$ git clone ssh://user@domain.com/repo.git 创建一个新的本地仓库:$ git init 本地修改显示工作路径下已修改的文件:$ git status 显示与上次提交版本文件的不同:$ git diff 把当前所有修改添加到下次提交中:$ git add . 把...
2015-01-29 15:49:34
223
原创 iOS开发中那些高效常用的宏(转)
//// MacroDefinition.h// MacroDefinitionDemo//// Created by 新风作浪 on 13-6-9.// Copyright (c) 2013年 SpinningSphere Labs. All rights reserved.//#ifndef MacroDefinition_h#define Macr...
2015-01-15 16:55:47
134
原创 我的常用工具命令总结
svn 基本命令总结见http://blog.youkuaiyun.com/ivwitxrgw/article/details/6395084问题1:svn up命令时总需要输入用户名密码。1、查看 主目录下:~/.subversion/config 文件,找到“store-auth-creds = no”这句,看前面是否有#号注释符。 如果没有,则或者加上#号,或者将no改为yes。2、...
2015-01-15 10:44:52
70
原创 iOS静态库和动态库
一、什么是库?库是共享程序代码的方式,一般分为静态库和动态库。二、静态库与动态库的区别?静态库:链接时完整地拷贝至可执行文件中,被多次使用就有多份冗余拷贝。动态库:链接时不复制,程序运行时由系统动态加载到内存,供程序调用,系统只加载一次,多个程序共用,节省内存。三、iOS里静态库形式?.a和.framework四、iOS里动态库形式?.dylib和.framework五...
2014-12-24 17:55:53
94
原创 svg图片在ios上的使用
1:从UI设计师那里得到的是每个svg图通过网站icomoon.io这个网站生成ttf格式的图片步骤:a.点击IcoMoon APP按钮 b.点击Import Icons(这里就是UI设计的svg图片) c.选中需要生成的图片,点击右下角的Generate Font按钮 d.全部沿用默认设置,点击右下角Download按钮下载下载包中就有我们包含的t...
2014-12-23 15:22:12
833
原创 svg图片在ios上的使用
1:从UI设计师那里得到的是每个svg图通过网站icomoon.io这个网站生成ttf格式的图片步骤:a.点击IcoMoon APP按钮 b.点击Import Icons(这里就是UI设计的svg图片) c.选中需要生成的图片,点击右下角的Generate Font按钮 d.全部沿用默认设置,点击右下角Download按钮下载下载包中就有我们包含的t...
2014-12-23 15:22:05
1731
原创 移动平台推送
1:消息推送平台集成IOS推送和Android推送,对外提供一致的接口服务IOS推送和Android推送的实现途径完全不一样。IOS推送是将消息发送到Apple的推送服务器(APNS),由APNS负责将消息发送到手机并在通知栏显示。从APNS到手机这一段完全在消息平台的控制之外,甚至在消息发送到APNS后,一般情况下APNS也不会给任何响应和反馈。Android推送则由我们自己建立了一套推...
2014-12-23 14:52:50
123
原创 Xcode设置项之Architectures和Valid Architectures
本文所讲的内容都是围绕iPhone的CPU指令集,现在先说说不同型号的iPhone都使用的是什么指令集:Xcode中关于生成二进制包指令集相关的设置项有以下三个:iPhone指令集本文所讲的内容都是围绕iPhone的CPU指令集(想了解ARM指令集的同学请点击这里),现在先说说不同型号的iPhone都使用的是什么指令集ARMv8/ARM64 = iPhone 5s, iPad Air,...
2014-12-22 10:42:36
112
原创 Xcode中Build Settings更改编译后能发现的问题
1:for循环不加括号2:枚举赋值时类型不匹配3:for循环永远不会执行3:break少写了一个4:赋值的“=”写错成“==”5:未实现的@select6:实现错误的@select7:没有使用到得变量 未使用的函数 未使用的参数8:未实现的portocol9:不匹配的函数返回类型这9类可能出现问题的代码如果不改编译器的编译配置,xcode是不会提示错...
2014-12-17 13:36:29
176
原创 破解cornerstone的有效期问题
1.设置在Finder里显示隐藏文件在终端输入以下命令:defaults write com.apple.finder AppleShowAllFiles -bool true2.在前往菜单按住option进入资源库,然后进入以下目录(资源库/Preference/ByHost):3.选择一个修改日期最新的.GlobalPreferences.xxxxxx.plist文件,使用XCod...
2014-12-16 11:34:42
756
原创 静态库编译心得
我们编译静态库时一般会生成模拟器,真机两个包的.a文件这二个库一个是用于真机运行的一个是用于模拟器运行的.其实我们可以利用lipo将这二个文件打包成一个通用的a文件将/Users/user/Library/Developer/Xcode/DerivedData/UITab-dgfkluumuexoxhcapzidtsmdgqcj/Build/Products替换成你的路径。 将/U...
2014-12-16 11:16:31
107
原创 根据dsym解析crash_log
1:拷贝symbolicatecrash到/bin目录下sudo cp /Applications/Xcode6.1.app/Contents/SharedFrameworks/DTDeviceKitBase.framework/Versions/A/Resources/symbolicatecrash /bin2:设置DEVELOPER_DIR目录export DEVELOPER...
2014-12-01 14:15:01
229
原创 mac系统创建plist执行定时任务
在linux下执行定期任务可以使用crontab,目前mac os也可以使用它,不过已不推荐使用。推荐做法是采用plist脚本,plist脚本可以设置执行的动作,时间间隔等其他一些信息。另外crontab的最小时间间隔是一分钟,使用plist脚本原则上时间间隔可以为一秒。plist脚本存放路径为/Library/LaunchDaemons或/Library/LaunchAgents,其区别...
2014-10-31 10:54:28
3083
原创 class-dump下载安装使用
用途分析app库文件或可执行文件,得到Objective-C类和部分C结构体的信息原理Objective-C类的信息会有字符串来对应描述,分析保存这些信息的区域,梳理成Objective-C头文件输出1:下载地址http://stevenygard.com/projects/class-dump/现在最新的版本是3.52:使用格式./class-dump -H ...
2014-10-29 11:22:53
316
原创 autolayout心得
一:实现方案在以前就已经确定了下面几个点: 1 使用autoLayout进行适配 2 引入masonry第三方库,提高适配时的开发效率 3 不需要使用autoLayout就能进行适配 4 动态计算显示位置的,可以根据屏幕宽高或父视图或兄弟视图的位置进行动态布局。 二:开发总结根据实际开发效果来看,总结经验如下:1 视图层级较少,页面布局简单的...
2014-10-28 13:30:12
143
原创 SSH链接越狱iOS设备
大家都知道,iOS系统是基于Unix的,算是Unix衍生出来的新系统,而要玩转Unix系统,无疑最根本的使用远程连接即SSH来用命令行直接控制你的iPhone,如果有人要问,远程连接(SSH)究竟有什么用呢?举个简单例子,前段时间号称一键清除、修复Cydia的越狱应用iLex RAT就是需要用远程连接的命令行才能使用的。 在越狱之前,苹果对root权限控制得非常之严,根本没有可能允许用户...
2014-10-28 13:29:25
251
原创 iOS越狱开发 theos安装
1:下载安装git clone https://github.com/DHowett/theos2:THEOS环境变量设置export THEOS=/opt/theos3:创建工程(需要先进入你要创建工程的目录)$THEOS/bin/nic.pl4:此时会看到命令行中的文本提示如下NIC 1.0 - New Instance Creator-------------...
2014-10-28 13:28:19
284
autolayout心得
使用了几天的autolayout下来,感觉还是比较简单的,并且熟练以后,做页面适配还是比较快的,某种程度上看,可能比之前做iphone5的适配更快。其实经验主要有两条1:有xib的,可以直接在xib中勾选Use Auto Layout,再选Builds for “iOS 6.0 and Later,然后在用培训中讲到的界面操作为需要适配的UIView添加约束。2:没有xib的那么你...
2014-09-04 17:14:52
80
原创 iOS 消息传递过程解析
在iOS中调用一个方法,其实是调用一个方法实现的函数指针并传给他对象实例指针,一个Selector,还有函数用到的参数。在Objective-C 中,每一个方法调用其实都是转换成了调用objc_msgSend方法。objc_msgSend的调用过程如下:0)首先检查消息接受对象是否为nil. 如果消息接受对象为nil,则触发nil-handler. 默认nil-handler是什么...
2014-08-08 13:33:03
136
原创 IOS开发中NSRunloop跟NSTimer的问题
在Windows时代,大家肯定对SendMessage,PostMessage,GetMessage有所了解,这些都是windows中的消息处理函数,那对应在ios中是什么呢,其实就是NSRunloop这个东西。在ios中,所有消息都会被添加到NSRunloop中,分为‘input source’跟'timer source'种,并在循环中检查是不是有事件需要发生,如果需要那么就调用相应的函数处理...
2014-08-04 17:20:22
74
原创 使用Alcatraz来管理Xcode插件(转)
Alcatraz是一个帮你管理Xcode插件、模版以及颜色配置的工具。它可以直接集成到Xcode的图形界面中,让你感觉就像在使用Xcode自带的功能一样。安装和删除使用如下的命令行来安装Alcatraz:mkdir -p ~/Library/Application\ Support/Developer/Shared/Xcode/Plug-ins;curl -fsSL https:/...
2014-08-01 09:56:46
112
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人