- 博客(32)
- 资源 (1)
- 收藏
- 关注
原创 去除.DS_Store
mac系统如何显示和隐藏文件苹果Mac OS X操作系统下,隐藏文件是否显示有很多种设置方法,最简单的要算在Mac终端输入命令。显示/隐藏Mac隐藏文件命令如下(注意其中的空格并且区分大小写):显示Mac隐藏文件的命令:defaults write com.apple.finder AppleShowAllFiles -bool true隐藏Mac隐藏文件的命令:defaults write co
2016-09-25 15:34:05 552
转载 Mantle简介
Mantle是iOS和Mac平台下基于Objective-C编写的一个简单高效的模型层框架。Mantle能做什么Mantle可以轻松把JSON数据、字典(Dictionary)和模型(即Objective对象)之间的相互转换,支持自定义映射,并且内置实现了NSCoding和NSCoping,大大简化归档操作。为什么要使用Mantle传统的模型层方案遇到的问题通常我们用Obj
2016-09-07 17:08:19 918
原创 git 命令使用
从一般开发者的角度来看,git有以下功能:1:从服务器上克隆数据库(包括代码和版本信息)到单机上。2:在自己的机器上创建分支,修改代码。3:在单机上自己创建的分支上提交代码。4:在单机上合并分支。5:新建一个分支,把服务器上最新版的代码fetch下来,然后跟自己的主分支合并。6:生成补丁(patch),把补丁发送给主开发者。7:看主开发者的反馈,如果主开发者发现两个一般
2016-09-01 11:01:39 308
原创 iOS统计xcode代码行数
如果要统计ios开发代码,包括头文件的,终端命令进入项目目录下,命令如下find . -name "*.m" -or -name "*.h" -or -name "*.xib" -or -name "*.c" |xargs wc -l 列出每个文件的行数 find . -name "*.m" -or -name "*.h" -or -name "*.xib"
2016-08-26 15:35:17 483
转载 iOS10 权限崩溃
今天 手机升级了 iOS10 Beta,然后用正在开发的项目 装了个ipa包,发现点击有关 权限访问 直接Crash了,并在控制台输出了一些信息:This app has crashed because it attempted to access privacy-sensitive data without a usage description. The app's Info.plist
2016-08-25 16:15:29 317
原创 关于storybord加视图控制器的代码实现方式
非常简单,代码如下- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { // Override point for customization after application launch. UISt
2016-08-22 11:22:32 285
原创 关于Pods written in Swift can only be integrated as frameworks问题的解决
使用cocopods导入第三方库报错 :[!] Pods written in Swift can only be integrated as frameworks; add `use_frameworks!` to your Podfile or target to opt into using it. The Swift Pods being used are: Alamofire and
2016-08-17 18:38:08 1626
原创 ios 去除字符串首尾空格、换行
去除首尾空格:NSString *content = [textView.text stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];去除首尾空格和换行:NSString *content = [textView.text stringByTrimmingCharactersInSet:[N
2016-08-05 16:00:46 749
原创 iOS开发之键盘类型UIKeyboardType
UIKeyboardTypeDefault:UIKeyboardTypeASCIICapable:UIKeyboardTypeNumbersAndPunctuation:UIKeyboardTypeURL:UIKeyboardTypeNumberPad:
2016-06-15 17:43:01 335
转载 iOS拨打电话的方式
1,这种方法,拨打完电话回不到原来的应用,会停留在通讯录里,而且是直接拨打,不弹出提示NSMutableString * str=[[NSMutableString alloc] initWithFormat:@"tel:%@",@"186xxxx6979"]; // NSLog(@"str======%@",str);[[UIApplication
2016-06-14 11:17:33 273
原创 定时器
定时器1 NSTimer *timer = [NSTimer timerWithTimeInterval:5 target:self selector:@selector(timerAction) userInfo:nil repeats:YES];2 [[NSRunLoop mainRunLoop] addTimer:timer forMode: UITrackingRunLoopMo
2016-06-02 17:41:37 240
转载 Masonry介绍与使用实践
前言1MagicNumber -> autoresizingMask -> autolayout以上是纯手写代码所经历的关于页面布局的三个时期在iphone1-iphone3gs时代 window的size固定为(320,480) 我们只需要简单计算一下相对位置就好了在iphone4-iphone4s时代 苹果推出
2016-05-30 18:38:57 278
原创 iOS后台定位
第一步,开启后台模式,选中定位,选择project --> capabilities-->Backgorund Modes --> Location updates 如图:Paste_Image.png第二步,在info.list 文件中添加如下配置:允许 http 请求 ,ios 9 之后需要添加,便于向服务器发送请求key>NSAppTransportSecurityk
2016-05-24 11:54:40 292
原创 键盘高度
iphone 6: 中文 2014-12-31 11:16:23.643 Demo[686:41289] 键盘高度是 258 2014-12-31 11:16:23.644 Demo[686:41289] 键盘宽度是 375 英文 2014-12-31 11:55:21.417 Demo[1102:58972] 键盘高度是 216
2016-05-23 18:33:38 534
原创 FMDB简介
此篇文章的逻辑如下图所示:图0-0 此篇文章的逻辑图iOS本地持久化储存方式概述说起iOS本地化储存的方式,大家估计在也熟悉不过了,NSUserDefault、File,Keychain、DataBase无非也就这几种方式。NSUserDefault、File:这两种使用方式都很简单,需要注意的一点就是所存储的对象都需要遵守并实现NSCoding协议中的两个方法,适用的
2016-05-23 15:04:06 338
原创 UIApplication简介
UIApplication什么是UIApplication?UIApplication对象是应⽤程序的象征.每一个应用都有⾃己的UIApplication对象,这个对象是系统自动帮我们创建的, 它是一个单例对象.一个iOS程序启动后创建的第一个对象就是UIApplication对象我们只能通过[UIApplication sharedApplication]获得这个
2016-05-21 08:37:29 271
原创 iOS键盘弹出又消失的问题
昨天遇到一个问题,我自定义的一个替人报名弹框,当报名成功后,我让其弹出一个uialertview,点击确定后跳转到其他页面,但是存在一个问题,就是键盘会出现弹出又消失的现象,分析了很久,并没有找到合适的方法让其消失,怀疑是线程问题,具体原因还在分析中,目前采用了一个延迟0.5s的操作,解决了该问题。上代码 [[[UIApplication sharedApplic
2016-05-20 11:36:21 1999
转载 iOS热更新
React Native是facebook刚开源的框架,可以用javascript直接开发原生APP,先不说这个框架后续是否能得到大众认可,单从源码来说,这个框架源码里有非常多的设计思想和实现方式值得学习,本篇先来看看它最基础的JavaScript-ObjectC通信机制(以下简称JS/OC)。概览React Native用iOS自带的JavaScriptCore作为JS的解析引擎,但并没
2016-05-18 13:12:04 544
转载 NoSQL初探之人人都爱Redis:(1)Redis简介与简单安装
一、NoSQL的风生水起 1.1 后Web2.0时代的发展要求 随着互联网Web2.0网站的兴起,传统的关系数据库在应付Web2.0网站,特别是超大规模和高并发的SNS类型的Web2.0纯动态网站已经显得力不从心,暴露了很多难以克服的问题: (1)对数据库高并发读写的需求 网站要根据用户个性化信息来实时生成动态页面和提供动态信息,所以基本上无法使用动态页面静态化技术,因此
2016-05-18 10:33:11 459
原创 PHP在mac上面配置
Apache配置在Mac OS 10.10.1中是自带Apache软件的,我们只需要启动对应的服务就好了,以下命令是操作Apache时常用的几个命令:// 启动Apache服务sudo apachectl start// 重新启动Apache服务sudo apachectl restart// 关闭Apache服务sudo apachectl stop// 查看Apach
2016-05-17 18:38:07 308
转载 iOS引用计数
引用计数如何存储有些对象如果支持使用 TaggedPointer,苹果会直接将其指针值作为引用计数返回;如果当前设备是 64 位环境并且使用 Objective-C 2.0,那么“一些”对象会使用其 isa 指针的一部分空间来存储它的引用计数;否则 Runtime 会使用一张散列表来管理引用计数。其实还有一种情况会改变引用计数的存储策略,那就是是否使用垃圾回收(用UseGC属性判断),但这
2016-05-14 13:24:27 927
转载 JS-native交互<一>
这个框架其实只是基于webkit中以C/C++实现的JavaScriptCore的一个包装,在旧版本iOS开发中,很多开发者也会自行将webkit的库引入项目编译使用。不过虽然iOS7把它当成了标准库,可惜目前,我还没有在Apple Developer中找到像之前文章中收集的那样的官方文档介绍这个框架的具体使用方法。好在还可以在Xcode中找到头文件,而且里面的注释对每个类和方法的功能写得还算
2016-05-12 18:38:55 282
转载 iOS集合遍历
集合的遍历操作是开发中最常见的操作之一,从C语言经典的for循环到利用多核cpu的优势进行遍历,开发中ios有若干集合遍历方法,本文通过研究和测试比较了各个操作方法的效率和优略势,并总结几个使用集合遍历时的小技巧。 ios中常用的遍历运算方法 遍历的目的是获取集合中的某个对象或执行某个操作,所以能满足这个条件的方法都可以作为备选: 经典for循环for in (NSFa
2016-05-10 16:13:45 348
原创 HTTP Or Socket
HTTP属于老话题了,在项目中我们经常需要往服务端发POST或者GET请求,但是对于HTTP的了解不应只局限于此。千里之行,始于足下。越想走的远,基本原理就应该了解的透彻全面一些,仅仅停留在使用ASIHttpRequest或者AFNetWorking传个参数发个请求的程度上是不够的。这篇文章就是带你全方面回顾一下HTTP。通过本文你能收获哪些内容:完整HTTP请求与响应包含
2016-03-25 16:38:46 688
转载 iOS开发调试
对于软件开发而言,调试是必须学会的技能,重要性不言而喻。对于调试的技能,基本上是可以迁移的,也就是说你以前在其他平台上掌握的很多调试技巧,很多也是可以用在iOS开发中。不同语言、不同IDE、不同平台的调试,有同性也有个性。今天我们就来学习一下iOS开发中的调试技巧,语言暂用为OC,IDE当然是强大的Xcode。首先说明下,Xcode已经为我们调试项目提供了极大的方便。【1.普通断点】断点(
2016-03-21 15:29:00 362
原创 XMPP原理
XMPP(可扩展消息处理现场协议)是基于可扩展标记语言(XML)的协议,它用于即时消息(IM)以及在线现场探测。它在促进服务器之间的准即时操作。这个协议可能最终允许因特网用户向因特网上的其他任何人发送即时消息,即使其操作系统和浏览器不同。 XMPP的前身是Jabber,一个开源形式组织产生的网络即时通信协议。XMPP目前被IETF国际标准组织完成了标准化工作。标准化的核心结果分为两部分;
2016-03-10 15:18:16 403
原创 XMPP创建流程
1、增加XMPP文件夹2、添加一些框架在target—>buildPhases—>link Binary with Libraries中添加 coredata.framework、libresolv.tbd、libxml2.tbd、libdn.a(这个是上个文件夹中的)3、修改header search Paths修改为/usr/include/libxml24、增加全局宏,修
2016-03-10 15:16:38 351
原创 关于APP跳转设置的一些代码
在iOS应用程序中打开设备设置界面及其中某指定的选项界面 [[UIApplicationsharedApplication] openURL:[NSURL URLWithString:@"prefs:root=General"]]; [[UIApplicationsharedApplication] openURL:[NSURL URLWithString:@"
2016-03-10 15:14:59 1519
转载 浅谈HTTP中Get与Post的区别
Http定义了与服务器交互的不同方法,最基本的方法有4种,分别 是GET,POST,PUT,DELETE。URL全称是资源描述符,我们可以这样认为:一个URL地址,它用于描述一个网络上的资源,而HTTP中的 GET,POST,PUT,DELETE就对应着对这个资源的查,改,增,删4个操作。到这里,大家应该有个大概的了解了,GET一般用于获取/查询资源信息,而POST一般用于更新资源信息。 1
2016-03-10 15:13:21 267
原创 EXC_BAD_ACCESS的本质详解以及僵尸模式调试原理
有时候,你会遇到由EXC_BAD_ACCESS造成的崩溃。 这篇文章会告诉你什么是EXC_BAD_ACCESS,以及它产生的原因。我还会提供一些EXC_BAD_ACCESS错误的解决方案。1. 什么是 EXC_BAD_ACCESS?一旦你理解EXC_BAD_ACCESS的本质,你就会更好地理解这个模糊的名词。这里有一个极为简单的解释,也有一个技术层面的解释。我们首先从简单的解释开始说起。
2016-03-10 15:11:39 349
转载 Socket原理详解
1. 网络中进程之间如何通信进 程通信的概念最初来源于单机系统。由于每个进程都在自己的地址范围内运行,为保证两个相互通信的进程之间既互不干扰又协调一致工作,操作系统为进程通信提供了相应设施,如UNIX BSD有:管道(pipe)、命名管道(named pipe)软中断信号(signal)UNIX system V有:消息(message)、共享存储区(share
2016-03-10 14:21:23 7677
转载 Socket编程原理
一、网络各个协议:TCP/IP、SOCKET、HTTP等网络七层由下往上分别为物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。其中物理层、数据链路层和网络层通常被称作媒体层,是网络工程师所研究的对象;传输层、会话层、表示层和应用层则被称作主机层,是用户所面向和关心的内容。 http协议 对应于应用层 tcp协议 对应于传输层
2016-03-10 11:59:37 1234
[zip文件] Xcode iOS9.3配置包
2016-04-11
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人