代码改变世界

随笔分类 - iOS 开发笔记

iOS 上架注意

2018-02-24 11:44 by jiangys, 207 阅读, 收藏, 编辑
摘要:一、推送证书 配置推送证书的流程说明:https://docs.aws.amazon.com/zh_cn/pinpoint/latest/developerguide/apns-setup.html 碰到的问题 1、无法导出.p12证书 创建一个证书请求文件一定要从【登录】-【我的证书】里导出 二、 阅读全文

iOS 开发笔记 - 导航到地图

2018-02-21 21:24 by jiangys, 130 阅读, 收藏, 编辑
摘要:导航到地图,已经不是什么新鲜事了。网上有好多参考的资料,我总结出只需要两步 第一步:在info中加上支持的各平台 比如:iosamap高德地图、comgooglemaps谷歌地图、baidumap百度地图、qqmap腾讯地图 第二步:直接在使用的地方,调用下面的代码即可 阅读全文

Xcode8.2 继续使用插件

2017-01-16 17:23 by jiangys, 1303 阅读, 收藏, 编辑
摘要:网上参考了文章:http://www.jianshu.com/p/ab819babf2c3 使用的是:update_xcode_plugins 。 但要注意的是,在Xcode 8.2下安装,并没有给我备份再重签名。安装成功后,只有一个Xcode. 因而,建议,先手动在“应用程序”里复制一个Xcode 阅读全文

iOS UITableView中点击状态栏无法回滚到顶部

2016-07-24 21:13 by jiangys, 993 阅读, 收藏, 编辑
摘要:// When the user taps the status bar, the scroll view beneath the touch which is closest to the status bar will be scrolled to top, but only if its `s 阅读全文

Xcode $(SRCROOT)和$(PROJECT_DIR)区别

2016-06-13 15:09 by jiangys, 10703 阅读, 收藏, 编辑
摘要:$(SRCROOT)代表的时项目根目录下 $(PROJECT_DIR)代表的是整个项目 PS:往项目添加文件时,例如.a等,要先show in finder ,复制到项目中,然后再拖到xcode项目中 而有时,我们的.a不在工程目录中,比如在工程的父目录上,可以写成:$(SRCROOT)/../YS 阅读全文

iOS 聊天表情键盘

2016-05-31 15:53 by jiangys, 2247 阅读, 收藏, 编辑
摘要:具体思路 部分代码说明 1.键盘通知 打印一下键盘的UIKeyboardWillChangeFrameNotification通知,我们可以得到键盘的Frame和动画的持续时间。 键盘的Frame和动画的持续时间 2.替换掉原来的键盘 self.textView.inputView == nil : 阅读全文

iOS 图文混排

2016-05-29 12:33 by jiangys, 1059 阅读, 收藏, 编辑
摘要:使用系统自带的NSAttributedString来处理,对于一般的图文混排已经足够了,但是,有一个缺点就是NSAttributedString并不支持gif动画。实际上,使用gif动画还是挺卡的。 思路: 1.通过RegexKitLite 正则,匹配出所有需要特殊处理的字符 2.由于表情图片占用一 阅读全文

iOS 正则表达式(二) RegexKitLite使用

2016-05-28 00:57 by jiangys, 3517 阅读, 收藏, 编辑
摘要:下面介绍的是iOS的一个第三方库,RegexKitLite 。使用起来是非常方便的,不过是2008年写的,MAC模式,我们在使用的时候,需要作两步操作。 RegexKitLite 导入 我们在githud中下载下来,将RegexKitLite.h 和 RegexKitLite.m 添加到项目中。 1 阅读全文

iOS 正则表达式(一)

2016-05-27 17:13 by jiangys, 222 阅读, 收藏, 编辑
摘要:在iOS开发中,正则一直是最常用的,但也是一直记不住的,现在做一些简单的总结 我们在网上找的正则,要有'\',这个在iOS是转义符,需要'\\'这样 打印出匹配的字符 结果(会打印出连续的结果): 阅读全文

iOS 崩溃分析

2016-05-21 00:36 by jiangys, 432 阅读, 收藏, 编辑
摘要:崩溃统计分析,在APP中是非常常见一种优化APP,发现APP的BUG的方式。 1.异常处理 可通过try catch 方式处理,如果发生异常,会走catch ,最终走fianlly。对一些我们不想他崩溃的地方,可以采取这种方式去处理。但要注意的是,通过这种处理,使用的第三方崩溃将捕捉不到异常信息,不 阅读全文

企业证书发布笔记

2016-05-16 23:54 by jiangys, 150 阅读, 收藏, 编辑
摘要:1.带(xxxx)结尾的是发布到AppStore证书, 2.解开签名信息 阅读全文

iOS 开发技巧

2016-05-06 16:10 by jiangys, 203 阅读, 收藏, 编辑
摘要:一、收起键盘 在UIViewController中收起键盘,经常看到一些写法,如: 除了调用相应控件的resignFirstResponder方法外,还有另外三种方法: 1.重载UIViewController 中的 touchesBegan 方法,然后在里面执行[self.view endEdit 阅读全文

iOS 上传自己的库到cocoapod

2016-05-02 15:36 by jiangys, 241 阅读, 收藏, 编辑
摘要:最近自己写了个库,传到github上,想让自己的库支持cocoapod,这里我看了很多相关文章。下面我就写下详细步骤以及会遇到的问题。 我们会使用trunk的方式提交到cocoa pod 这是2014年5月20日以后才支持的。 注册trunk 格式:pod trunk register github 阅读全文

iOS 开发笔记-Objective-C之KVC、KVO

2016-04-20 11:41 by jiangys, 196 阅读, 收藏, 编辑
摘要:概述 键值编码(KVC)、键值监听(KVO)特性 键值监听KVO Key Value Observing(简称KVO)其实是一种观察者模式,利用它可以很容易实现视图组件和数据模型的分离,当数据模型的属性值改变之后作为监听器的视图组件就会被激发,激发时就会回调监听器自身。在ObjC中要实现KVO则必须 阅读全文

iOS 测试企业应用的分发

2016-04-18 11:42 by jiangys, 384 阅读, 收藏, 编辑
摘要:开发者能够方便地来做iOS应用的测试分发,目前可以选用“浦公英”和“Fir.im”来做。 生成IPA文件 生成应用的 IPA 文件可以使用命令行 xcodebuild exportArchive -exportFormat ipa来完成,也可以使用 Xcode 提供的相应功能。相信大部分同学应该都用 阅读全文

iOS 添加启动图片

2016-04-15 11:47 by jiangys, 379 阅读, 收藏, 编辑
摘要:之前添加启动图片,一直都是通过添加LaunchImage来实现,见链接 http://www.cnblogs.com/jys509/p/4856068.html 这种方法,就需要给每个尺寸添加图片。 在Xcode 7 之后,建议使用LaunchScreen.storyboard,因为这种,只需要提供 阅读全文

iOS LeftMenu抽屉效果与ScrollView共存时的手势冲突

2016-03-16 17:51 by jiangys, 1008 阅读, 收藏, 编辑
摘要:公司有个项目,需要做左侧滑动,首页是ScrollView嵌套TableView。首页是一个ScrollView,所以当contentOffset是0.0的时候,无法直接滑动出抽屉效果,用户体验感非常差。思考了一下还是手势的问题。 于是将ScrollView单独分了出来,重写了 - (BOOL)ges 阅读全文

iOS 内存管理分析

2016-03-09 23:28 by jiangys, 1216 阅读, 收藏, 编辑
摘要:内存分析 静态分析(Analyze) 不运行程序, 直接检测代码中是否有潜在的内存问题(不一定百分百准确, 仅仅是提供建议) 结合实际情况来分析, 是否真的有内存问题 动态分析(Profile == Instruments) 1> 运行程序, 通过使用app, 查看内存的分配情况(Allocatio 阅读全文

iOS UIViewController生命周期控制

2016-02-28 21:00 by jiangys, 315 阅读, 收藏, 编辑
摘要:具体流程,看下图: init方法在init方法中实例化必要的对象(遵从LazyLoad思想)init方法中初始化ViewController本身loadView方法当view需要被展示而它却是nil时,viewController会调用该方法。不要直接调用该方法。如果手工维护views,必须重写该方 阅读全文

iOS9的新特性以及适配方案

2016-02-28 20:51 by jiangys, 2179 阅读, 收藏, 编辑
摘要:新的iOS 9系统比iOS8更稳定,功能更全面,而且还更加开放。iOS 9加入了更多的新功能,包括更加智能的Siri,新加入的省电模式。iOS 9为开发者提供5000个全新的API。 1. 限制HTTP协议,全部改用更安全的HTTPS iOS9让所有的HTTP默认使用了HTTPS,原来的HTTP协议 阅读全文

iOS Runtime原理及使用

2016-02-22 18:11 by jiangys, 10198 阅读, 收藏, 编辑
摘要:runtime简介 因为Objc是一门动态语言,所以它总是想办法把一些决定工作从编译连接推迟到运行时。也就是说只有编译器是不够的,还需要一个运行时系统 (runtime system) 来执行编译后的代码。这就是 Objective-C Runtime 系统存在的意义,它是整个Objc运行框架的一块 阅读全文

SDWebImage 原理及使用

2016-02-19 11:23 by jiangys, 14787 阅读, 收藏, 编辑
摘要:概述 SDWebImage托管在github上。https://github.com/rs/SDWebImage 这个类库提供一个UIImageView类别以支持加载来自网络的远程图片。具有缓存管理、异步下载、同一个URL下载次数控制和优化等特征。 SDWebImage 加载图片的流程 入口 set 阅读全文

iOS应用图标及尺寸

2016-02-18 11:40 by jiangys, 3739 阅读, 收藏, 编辑
摘要:Icon and Image Sizes Every app needs an app icon and a launch file or image. In addition, some apps need custom icons to represent app-specific conten 阅读全文

iOS 微信支付

2016-01-20 14:18 by jiangys, 17518 阅读, 收藏, 编辑
摘要:相关资料 SDK下载:https://pay.weixin.qq.com/wiki/doc/api/app.php?chapter=11_1 APP端开发步骤说明:https://pay.weixin.qq.com/wiki/doc/api/app.php?chapter=8_5 SDK接入 服务器 阅读全文

iOS 支付宝支付

2016-01-15 14:08 by jiangys, 6019 阅读, 收藏, 编辑
摘要:在开发过程中,经常需要接入第三方支付。下面对支付进行一个概括。 支付宝SDK下载地址:https://doc.open.alipay.com/doc2/detail?treeId=54&articleId=103419&docType=1 在支付宝集成的过程中,会遇到一些报错,下面就碰到的报错,和大 阅读全文

Objective-C中NSArray的基本用法示例

2015-12-18 21:10 by jiangys, 7169 阅读, 收藏, 编辑
摘要:NSArray的一些用法NSArray只允许装OC对象,并且不能装空值,空代表数组元素的结束#pragma mark - NSArray的基本用法// 创建一个空数组NSArray *array = [NSArray array];// 创建有一个元素的数组array = [NSArray arra... 阅读全文

UIImageView的图片居中问题

2015-12-09 20:21 by jiangys, 261 阅读, 收藏, 编辑
摘要:http://blog.csdn.net/zhoutao198712/article/details/8762012 阅读全文

iOS 代码规范

2015-11-28 12:40 by jiangys, 619 阅读, 收藏, 编辑
摘要:概述 命名的好坏在开发中往往也不怎么重视,毕竟差的命名也不会影响程序逻辑。但是不好的命名在大项目中带来的隐形维护成本是相当高的,这些在项目开始时可能还很难察觉,而后来会陷入前仆后继的维护困境中。我们往往非常重视项目逻辑的复杂性,却不能好好的把“简单”的命名做好。其实,如果简单的东西都做不好,那么做出 阅读全文

iOS 开发笔记-AFNetWorking https SSL认证

2015-11-27 19:26 by jiangys, 36230 阅读, 收藏, 编辑
摘要:一般来讲如果app用了web service , 我们需要防止数据嗅探来保证数据安全.通常的做法是用ssl来连接以防止数据抓包和嗅探 其实这么做的话还是不够的 。 我们还需要防止中间人攻击(不明白的自己去百度)。攻击者通过伪造的ssl证书使app连接到了伪装的假冒的服务器上,这是个严重的问题!那么如 阅读全文

iOS 开发笔记 cocoapods 配置遇到的问题

2015-10-28 11:28 by jiangys, 170 阅读, 收藏, 编辑
摘要:当使用svn的时候,每次使用pods update,都会出现一个问题,原来所有的第三方类库里面的.svn都被删除了。提交上svn服务器时,会要求提交全部。如果只是提交如MJExtension这个类库,会漏了很多东西,编译出错。解决方法:1.从服务器上拉一个新的工程,你会发现Support Files... 阅读全文

iOS 开发笔记-控制器tab切换view显示

2015-10-11 17:03 by jiangys, 1725 阅读, 收藏, 编辑
摘要:在开发过程中,我们常常会碰到一种情况就是,在一个controller里面,经常要放很多复杂的控制,最常用的就是tar切换。tar切换,原理就是在一个controller里面,显示另一个controller的view。如果发现:控制器的view还在,但是view上面的数据不显示,极大可能是因为:控制器... 阅读全文

iOS 开发笔记-报错处理

2015-10-11 00:36 by jiangys, 159 阅读, 收藏, 编辑
摘要:1.xcode7报错:does not contain bitcode解决方法:Build Settings 搜索 bitcode 将Enable Bitcode更改为NO即可2.CodeSignerror:Nocodesigningidentitesfound:Novalidsigningiden... 阅读全文

iOS 开发笔记-加载/初始化

2015-10-05 10:54 by jiangys, 118 阅读, 收藏, 编辑
摘要:ViewDidLoad一般我们会在这里做界面上的初始化操作,比如往view中添加一些子视图、从数据库或者网络加载模型数据装配到子视图中在自定义控制里initWithFrame:一般用于添加控件,分割线等initWithStyle:tableCell的初始化方法,一个cell只会调用一次,一般在这里添... 阅读全文

iOS Xcode 用 GitHub 托管项目

2015-09-26 19:17 by jiangys, 165 阅读, 收藏, 编辑
摘要:直接在xcode里用Github教程:http://jingyan.baidu.com/article/ab0b5630936ab6c15afa7d1c.html经过本人尝试之后,发现,使用官网的客户端更简单。客户端下载:https://desktop.github.com/1.先在Github上创... 阅读全文

iOS 开发笔记-控制器翻页

2015-09-26 11:03 by jiangys, 142 阅读, 收藏, 编辑
摘要:找了一天,终于找到了两个能用的。1.https://github.com/wangmchn/WMPageController2.https://github.com/everettjf/EVTTabPageScrollView 阅读全文

iOS CocoaPods安装和使用图解

2015-09-25 23:55 by jiangys, 52692 阅读, 收藏, 编辑
摘要:Cocoapods安装步骤 一、升级Ruby环境 如果Ruby没有安装,请参考 如何在Mac OS X上安装 Ruby运行环境 二、使用官方的RubyGems镜像 安装CocoaPods时我们要访问cocoapods.org,用官方的RubyGems镜像来代替官方版本,执行以下命令: 为了验证你的R 阅读全文

iOS 开发笔记-获取某个APP素材

2015-09-23 16:41 by jiangys, 3956 阅读, 收藏, 编辑
摘要:2019.02.01 更新 以下这种方式只适合越狱的手机,目前12.1以后,iTools已经不适合了,请看最下面第二种方式。 有时候,我们看到别人的APP做得挺漂亮的,那么我们想查看该APP的图片素材,要怎么弄呢? 一、下载一个iTools,安装,与手机链接。点击应用,选择我们要查看的APP,选择备 阅读全文

iOS 开发技巧总结

2015-09-19 15:00 by jiangys, 274 阅读, 收藏, 编辑
摘要:常用代码片断,只为了便于记忆 日期格式转换 Modal 除了push之外,还有另外一种控制器的切换方式,那就是Modal 任何控制器都能通过Modal的形式展示出来 Modal的默认效果:新控制器从屏幕的最底部往上钻,直到盖住之前的控制器为止 // 以Modal的形式展示控制器 - (void)pr 阅读全文

iOS 开发笔记-NSURLConnection的使用

2015-09-16 11:16 by jiangys, 101 阅读, 收藏, 编辑
摘要:通过NSURLConnection发送一个HTTP GET请求//send a GET request to server with some params-(void)httpGetWithParams{ NSString *urlString = @"http://chaoyuan.sin... 阅读全文

ios UrlEncode与UrlDecode

2015-09-16 09:40 by jiangys, 389 阅读, 收藏, 编辑
摘要:url字符串中具有特殊功能的特殊字符的字符串,或者中文字符,作为参数用GET方式传递时,需要用urlencode处理一下。当然,有时作为Post参数传递,也需要urlencode处理一下。NSString+URL.h#import @interface NSString (URL)-(NSStrin... 阅读全文

iOS 常用小功能 总结

2015-09-13 15:38 by jiangys, 513 阅读, 收藏, 编辑
摘要:常用小功能iOS中的很多小功能都是非常简单的,几行代码就搞定了,比如打电话、打开网址、发邮件、发短信等打电话方法一(不被采用):拨号之前会弹框询问用户是否拨号,拨完后能自动回到原应用NSURL *url = [NSURL URLWithString:@"telprompt://10010"];[[U... 阅读全文

iOS 开发笔记-UILable/UIFont/UIButton常见设置

2015-08-26 20:19 by jiangys, 188 阅读, 收藏, 编辑
摘要:UILabel的常见设置@property(nonatomic,copy) NSString *text; 显示的文字@property(nonatomic,retain) UIFont *font; 字体@property(nonatomic,retain) UIColor *textColor;... 阅读全文

iOS 开发笔记-Storyboard

2015-08-25 00:21 by jiangys, 197 阅读, 收藏, 编辑
摘要:什么时候用Pust,什么时候用Modal?一般情况下,是导航控制器点过去的,都使用Pust。如果是相对独立的,则用Modal,比如是导航上面的+添加之类。关闭一个Modal-(IBAction)cancel:(id)sender{ [self dismissViewControllerAnim... 阅读全文

iOS 开发笔记-plist使用

2015-08-23 10:20 by jiangys, 177 阅读, 收藏, 编辑
摘要:1.创建一个plist2.填写为ImageList.plist3.填入数据4.完成加载代码:@interface UYViewController ()//图片信息的数组@property(nonatomic,strong) NSArray *imageList;@end@implementatio... 阅读全文

iOS开发需要学习哪些内容?

2015-08-17 21:51 by jiangys, 194 阅读, 收藏, 编辑
摘要:看图: 阅读全文

Xcode6中添加pch文件

2015-08-02 21:43 by jiangys, 158 阅读, 收藏, 编辑
摘要:亲测可用:http://www.cnblogs.com/YouXianMing/p/3989155.html 阅读全文

xcode6 新建项目真机调试无法全屏

2015-06-22 20:26 by jiangys, 739 阅读, 收藏, 编辑
摘要:设置app ICons and Launch Images属性通过设置启动图片,选择一张适配的图片(Default-568@2x)作为启动页的图片,可以解决全屏的问题 阅读全文

iOS手机应用开发原型模板及开发流程

2015-06-20 14:01 by jiangys, 5676 阅读, 收藏, 编辑
摘要:在开始做一个项目的时候,究竟需要准备些什么前期工作呢,在外包公司中,又是一个怎么样的开发步骤呢?下面,按照我的理解,说一下。项目流程图看上图,从左往右,如果我们仅是一名开发工程师,只需要关心上图中“开发工程师”的职责。当然,开发项目前,大部分工作是需要“项目经理”和“产品经理”去完成的,比如,分析、... 阅读全文

iOS开发--图片轮播

2015-05-24 00:19 by jiangys, 1446 阅读, 收藏, 编辑
摘要:直接上代码了,比较简单。演示下载地址:Demo//// UYViewController.m// 图片轮播器//// Created by jiangys on 15/5/23.// Copyright (c) 2015年 uxiaoyuan. All rights reserved.//#... 阅读全文

iOS开发--UILabel根据内容自动调整高度

2015-05-17 22:09 by jiangys, 4815 阅读, 收藏, 编辑
摘要:写法一:对象方法,传入:字体/最大尺寸. 即可得到宽高,最大尺寸主要限制宽度,如果是一行就给个{MAXFLOAT,MAXFLOAT};如果是多行就限制X值,Y值随便给- (CGSize)sizeWithFont:(UIFont *)font maxSize:(CGSize)maxSize{ N... 阅读全文

iOS开发--底部按钮和应用图标显示未读消息

2015-05-17 10:18 by jiangys, 9815 阅读, 收藏, 编辑
摘要:我们要实现的效果如下:我们使用系统自带的,实际上,代码量很少,在我们要显示的按钮上,打上下面一句代码即可:self.tabBarItem.badgeValue = @"1";同时设置图标和按钮的代码:/** * 获得未读数 */- (void)setupUnreadCount{ //获取未读... 阅读全文

iOS下拉刷新和上拉刷新

2015-05-12 23:10 by jiangys, 44893 阅读, 收藏, 编辑
摘要:在iOS开发中,我们经常要用到下拉刷新和上拉刷新来加载新的数据,当前这也适合分页。iOS原生就带有该方法,下面就iOS自带的下拉刷新方法来简单操作。上拉刷新1、在TableView里,一打开软件,我们就调用下拉刷新事件。- (void)viewDidLoad { [super viewDidL... 阅读全文

iOS网络开发之AFNetworking

2015-05-10 16:42 by jiangys, 8188 阅读, 收藏, 编辑
摘要:概述AFNetworking是一个非常受欢迎的轻量级的iOS、Mac OS X网络通信类库。它建立在NSURLConnection、NSOperation以及其技术的基础上,有着精心设计的模块结构和功能丰富的API,让很多网络通信功能的实现变得十分简单。AFNetworking支持HTTP请求和基于... 阅读全文

iOS开发--沙盒

2015-05-03 01:56 by jiangys, 316 阅读, 收藏, 编辑
摘要:IOS中的沙盒机制(SandBox)是一种安全体系,它规定了应用程序只能在为该应用创建的文件夹内读取文件,不可以访问其他地方的内容。所有的非代码文件都保存在这个地方,比如图片、声音、属性列表和文本文件等。 1.每个应用程序都在自己的沙盒内 2.不能随意跨越自己的沙盒去访问别的应用程序沙盒的内容 3. 阅读全文

iOS 界面启动时,功能新特征显示

2015-03-26 23:40 by jiangys, 268 阅读, 收藏, 编辑
摘要:APP新启动的时候,都会有几张新的图片滑动,才能到主的界面。现在,我们新建一个控制器,专门来处理新特性,直接上代码.第一步:新建一个NewfeatureController//// HWNewfeatureController.m// Weibo//// Created by jys on 1... 阅读全文

Xcode 快捷键及代码格式化

2015-03-23 09:45 by jiangys, 44367 阅读, 收藏, 编辑
摘要:按住apple键点击类名就可以定位到这个类中查看相关定义(在日后的开发中我们会经常这么来做,毕竟要记住iOS开发中所有的API是不现实的,有些API我们可以通过这种方法来查找) PS:下面都是网上百度后经过我自己整理,都是Xcode比较常用的快捷键,特别是红色标注的,很常用。用熟了开发编辑代码的的时 阅读全文

(转)使用XCode6打开项目以后再用XCode5出现的问题fatal error: malformed or corrupted AST file: 'Unable to load module

2015-03-21 12:25 by jiangys, 416 阅读, 收藏, 编辑
摘要:使用不同版本的XCode出现的问题:fatal error: malformed or corrupted AST file: 'Unable to load module "/Users/xxx/Library/Developer/Xcode/DerivedData/ModuleCache/XYZ... 阅读全文

iOS 自定义日志输出

2015-03-15 23:33 by jiangys, 457 阅读, 收藏, 编辑
摘要:在做iOS开发过程中,我们经常需要输出日志来查看某些数据是否打印出来,或者查看查个类是否被调用了。系统默认的是NSLog(@"xxxx %d",1) ,但如果该APP要发布到商店,就要把这些日志全部都注释掉,要不是的话,要非常占内存。当前的做法是,在.pch 中,定义一个宏:#ifdef DEBUG... 阅读全文

VMware11 安装MAC OS X 10.9

2015-01-25 11:13 by jiangys, 8804 阅读, 收藏, 编辑
摘要:由于本人使用的是window电脑,想开发苹果,选择了安装VMware10 安装MAC OS X 10.9 来实现。链接:http://jingyan.baidu.com/article/84b4f565c9ccfc60f7da3266.html在安装中,遇到一些问题。1、用VMware11创建好os... 阅读全文