自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

苏小妖的博客

一个在路上的开发者

  • 博客(35)
  • 收藏
  • 关注

原创 iOS 13 适配

iOS 13 适配iOS 13 如期而至,适配工作可以开展起来啦。在适配 iOS 13 过程中,整理了如下一些需要适配的内容,请根据自己项目的情况检查并进行适配。1.iOS 13 支持适配的机型iPhone X、iPhone XR、iPhone XS、iPhone XS MaxiPhone 8、iPhone 8 PlusiPhone 7、iPhone 7 PlusiPhone 6s...

2019-10-17 17:10:21 1474 1

原创 iOS之widget开发(Today Extension)

extension是iOS8新开放的一种对几个固定系统区域的扩展机制,它可以在一定程度上弥补iOS的沙盒机制对应用间通信的限制。extension的出现,为用户提供了在其它应用中使用我们应用提供的服务的便捷方式,比如用户可以在Today Extension中查看应用展示的简略信息,而不用再进到我们的应用中,同样可以快捷操作app的功能,这将是一种全新的用户体验。

2017-06-06 19:49:52 446

原创 iOS之键值编码(KVC)与键值监听(KVO)

KVC简介我们知道可以通过setter、getter方法来设置和修改对象的属性,也知道如何通过简化的点语法来设置、修改对象的属性。实际上,Objective-C还支持一种更灵活的操作方式,这种方式允许以字符串形式间接操作对象的属性,这种方式的全称是Key Value Coding(简称KVC),即键值编码。简单的KVC最基本的KVC由NSKeyValueCoding协议提供支持,最基本的操作属性的两

2017-05-06 11:08:48 487

原创 iOS之对象复制

NSObject类提供了copy和mutableCopy方法,通过这两个方法即可复制已有对象的副本,本文将会详细介绍关于对象复制的内容。

2017-03-11 11:37:55 234

原创 iOS命令行自动打包(archive)

前言  iOS开发工程师在测试修复bug的过程中,一般会存在频繁打包的情况,如果一步步在xcode中点击archive,下一步,下一步。。。这样太浪费我们的时间了。下面我们来介绍在命令行使用xcodebuild命令进行自动archive打包并且导出ipa文件。准备工作  打开你的项目工程配置你的证书和描述文件:clean一下你的工程  进入到你的工程目录下面:   cd /Dandy/dandy_

2016-12-23 11:53:34 2430

原创 iOS分析崩溃日志

IOS分析定位崩溃问题有很多种方式,但是发布到AppStore的应用如果崩溃了,我们该怎么办呢?通常我们都会在系统中接入统计系统,在系统崩溃的时候记录下崩溃日志,下次启动时将日志发送到服务端,比较好的第三方有umeng之类的。今天我们来讲一下通过崩溃日志来分析定位我们的bug。

2016-12-19 14:43:07 1485

原创 迭代器模式(Java与iOS)

定义:  迭代器模式又叫做游标(Cursor)模式。提供一种方法访问一个容器(container)对象中的各个元素,而又不暴露该对象的内部细节迭代器模式的结构:抽象容器:一般是一个接口,提供一个iterator()方法,例如java中的Collection接口,List接口,Set接口等。具体容器:就是抽象容器的具体实现类,比如List接口的有序列表实现ArrayList,List接口的链表实现

2016-10-27 16:10:07 264

转载 iOS开发-你真的会用SDWebImage?

原文SDWebImage作为目前最受欢迎的图片下载第三方框架,使用率很高。但是你真的会用吗?本文接下来将通过例子分析如何合理使用SDWebImage。使用场景:自定义的UITableViewCell上有图片需要显示,要求网络网络状态为WiFi时,显示图片高清图;网络状态为蜂窝移动网络时,显示图片缩略图。如下图样例:图中显示的图片符合根据网络状态下载要求由于要

2016-05-05 22:39:41 321

转载 iOS多线程篇:NSThread

原文一、什么是NSThreadNSThread是基于线程使用,轻量级的多线程编程方法(相对GCD和NSOperation),一个NSThread对象代表一个线程,需要手动管理线程的生命周期,处理线程同步等问题。二、NSThread方法介绍1)动态创建1NSThread * newThread = [[NSThr

2016-04-12 10:23:29 486

转载 iOS内功篇:内存管理

原文前言  现在iOS开发已经是arc甚至是swift的时代,但是内存管理仍是一个重点关注的问题,如果只知盲目开发而不知个中原理,踩坑就跳不出来了,理解好内存管理,能让我们写出更有质量的代码。  内存管理是程序设计中很重要的一部分,程序在运行的过程中消耗内存,运行结束后释放占用的内存。如果程序运行时一直分配内存而不及时释放无用的内存,会造成这样的后果:程序占用的内存越来越大,直

2016-04-11 12:01:38 597

原创 Charles使用介绍--MAC上优秀的抓包工具

Charles使用介绍--MAC上优秀的抓包工具一、Charles简介:        Charles是mac端的一款截取与分析网络请求的工具,在网络开发中使用其作分析,可以大大提高我们的开发效率。Charles,它是Java开发的,所以跨平台,不仅可以在Mac上使用,Linux以及Window下都是可以使用的,当然需要安装JDK,才能运行。二、Charles下载:

2016-04-05 16:43:50 792

转载 iOS面试必看,最全梳理

原文序言目前形势,参加到iOS队伍的人是越来越多,甚至已经到供过于求了。今年,找过工作人可能会更深刻地体会到今年的就业形势不容乐观,加之,培训机构一火车地向用人单位输送iOS开发人员,打破了生态圈的动态平衡。矫情一下,言归正传,我奉献一下,为iOS应聘者梳理一下面试题,希望能助一臂之力!OC的理解与特性OC作为一门面向对象的语言,自然具有

2016-04-05 10:40:11 1229

原创 UITableView小技巧--实现cell向左滑动删除,编辑等功能

一、简介 ios8.0之前只能定制左划的一个功能按键,若想要实现两个左划功能按键,却需要费一番功夫。自ios8.0之后,苹果推出新的api,来让开发者可以实现自定义左划控件。二、初始化tableview如同普通的tableview初始化一样就可以三、实现tableview的delegate与datasource实现你需要实现的datasource和delegate四、实现自

2016-02-24 17:04:17 12931

翻译 App Store最新审核指南(2015年3月更新版)

苹果近日更新了App Store审核指南的相关章节,对此前版本进行了修改和完善。除了增加应用截图、预览等限制外,使用Apple Pay进行定期付款的应用程序必须展示每个阶段所需款额,费用归属以及如何取消。而从修改的政策部分可以看出,苹果对App store应用的审核更加严格,鉴于近来国内游戏踩雷屡见不鲜,审核标准请各位业内同学耐心阅读。以下是更新后的审核指南(修改部分红色字

2015-12-31 12:20:44 588

原创 安装CocoaPods

为什么使用cocoapods在企业中的开发,大部分都是团队协作的,对于项目中引入的第三方类库,我们有两种方式:1.直接将库拖入到工程目录中使用2.通过使用cocoapods讲库pod到工程中来方法一,方便使用,直接拖入即可。方法二对于我们工程的后期维护比较方便,因为第三方的类库也是会更新的,使用第二种方法更新就更为方便了。所以在企业中,都是采用cocoapods的方式来引入类库的。

2015-12-31 11:26:34 404

转载 iOS9下App Store新应用提审攻略

一 提审前备资料众所周知,在iTunes Connect后台上传新应用时需要填写各种纷繁复杂的资料,看似复杂,如果能在新应用上传前搞清楚各项资料,并予以备齐,提审便相对简单很多。下面重点给大家介绍一下iTunes Connect 后台上传新App时需要提交的各项资料,切勿等待上传时才开始准备,这会严重影响你的上传进程和资料质量,如果严重的话,甚至会影响App的审核结果以及后续的推广计划

2015-12-23 14:35:41 861

转载 [Objective-C]关联(objc_setAssociatedObject、objc_getAssociatedObject、objc_removeAssociatedObjects)

关联是指把两个对象相互关联起来,使得其中的一个对象作为另外一个对象的一部分。    关联特性只有在Mac OS X V10.6以及以后的版本上才是可用的。在类的定义之外为类增加额外的存储空间    使用关联,我们可以不用修改类的定义而为其对象增加存储空间。这在我们无法访问到类的源码的时候或者是考虑到二进制兼容性的时候是非常有用。    关联是基于关键字的,因此,我们可以为任何对象增

2015-12-23 11:07:33 220

转载 WWDC 2012 Session笔记——219 Advanced Collection Views and Building Custom Layouts

这是博主的WWDC2012笔记系列中的一篇,完整的笔记列表可以参看这里。如果您是首次来到本站,也许您会有兴趣通过RSS,或者通过页面左侧的邮件订阅的方式订阅本站。在上一篇UICollectionView的入门介绍中,大概地对iOS6新加入的强大的UICollectionView进行了一些说明。在这篇博文中,将结合WWDC2012 Session219:Advanced Collecti

2015-12-23 10:26:50 285

转载 WWDC 2012 Session笔记——205 Introducing Collection Views

这是博主的WWDC2012笔记系列中的一篇,完整的笔记列表可以参看这里。如果您是首次来到本站,也许您会有兴趣通过RSS,或者通过页面左侧的邮件订阅的方式订阅本站。在之前的iOS6 SDK新特性前瞻中我曾经提到过UICollectionView,当时只把CollectionView当作是一个现在已有的开源GridView,仔细研究了下WWDC2012相关的Session后发现并不是那么简

2015-12-23 10:24:10 419

转载 详解 CALayer 和 UIView 的区别和联系

前言前面发了一篇iOS 面试的文章,在说到 UIView 和 CALayer 的区别和联系的时候,被喵神指出没有切中要点,所以这里就 CALayer 和 UIView 这个问题重新整理了下。这里会先分条解释,最后会在文章的结尾给出概括性总结。1.首先UIView可以响应事件,Layer不可以.UIKit使用UIResponder作为响应对

2015-12-23 10:06:32 269

转载 iOS正则表达式

首先简单介绍一下正则表达式的基本写法及用法\d 匹配任何一个数字,即[0-9]\d+表示1个以上的数字\d*标示0个或多个数字\s 表示分隔符,包括空格、制表符和换行符\s* 0个或多个分隔符\w 表示字母、数字和下划线,这里还包括Unicode字符,不同的语言里有些不同\w{4} 表示4个非空白字符. 表示任何一个字符,不包

2015-12-22 18:10:33 307

转载 ios开发——实用技术篇&Block/KVO/通知/代理

关于iOS开发中数据传递的方法有很多种,但是使用最多的就是这里的四种,而且我们要学会在适当的时候使用合适的方式,才能充分的提高app的性能下面简单介绍一下这些方法的使用Block第一、综述  block是OC中另外一种对象和对象的通信方式,是一对一的关系,类似于delegate,而通知时一对多的关系第二、定义block类型  int (^myBloc

2015-12-22 18:00:52 484

转载 Masonry介绍与使用实践(快速上手Autolayout)

前言1MagicNumber -> autoresizingMask -> autolayout以上是纯手写代码所经历的关于页面布局的三个时期在iphone1-iphone3gs时代 window的size固定为(320,480) 我们只需要简单计算一下相对位置就好了在iphone4-iphone4s时代 苹果

2015-12-22 15:49:51 362

转载 细谈之AutoLayout全解

看到群中好多朋友还停留在Frame布局的痛苦时代,以及有些开发者接手别人的就项目发现布局一团乱。而且没有启动图的时候并不是真正真正适配iPhone 6(S)、iPhone6(S) Plus等设备 。寒哥准备尽可能详细的讲一讲我所掌握的AutoLayout 。AutoLayout很难?我觉得AutoLayout的难的、约束的选择性太多,抽象性增加,大家直接

2015-12-21 10:07:10 354

转载 iOS开发系列—Objective-C之Foundation框架

概述我们前面的章节中就一直新建Cocoa Class,那么Cocoa到底是什么,它和我们前面以及后面要讲的内容到底有什么关系呢?Objective-C开发中经常用到NSObject,那么这个对象到底是谁?它为什么又出现在Objective-C中间呢?今天我们将揭开这层面纱,重点分析在IOS开发中一个重要的框架Foundation,今天的主要内容有:Foundation概述常用结构体

2015-12-21 09:48:38 479

转载 GCD使用三部曲之:基本用法

什么是GCD?GCD全称为Grand Central Dispatch,是libdispatch的市场名称,而libdispatch是Apple的一个库,其为并发代码在iOS和OS X的多核硬件上执行提供支持。确切地说GCD是一套低层级的C API,通过 GCD,开发者只需要向队列中添加一段代码块(block或C函数指针),而不需要直接和线程打交道。GCD在后端管理着一个线

2015-12-20 11:34:43 656

转载 iOS开发之如何跳到系统设置里的各种设置界面

跳到更多设置界面除了跳到WiFi设置界面,能不能跳到其他的设置界面呢?比如:定位服务、FaceTime、音乐等等。都是可以的,一起来看看如何实现的!定位服务定位服务有很多APP都有,如果用户关闭了定位,那么,我们在APP里面可以提示用户打开定位服务。点击到设置界面设置,直接跳到定位服务设置界面。代码如下://定位服务设置界面NSURL *url = [NSURL UR

2015-12-20 11:01:47 364

转载 iOS新建项目架构规范

注:这是本人对多年来iOS开发中项目结构一点自己的见解也是为公司内部制定的iOS项目创建模板结构;文中引入了sina的iOS-iPhone的客户端的界面架构,但是本人并非sina的工作人员,只是根据自己的理解划分了项目结构,欢迎提出不同观点:gwinabc@foxmail.com。项目结构GitHub地址:https://github.com/Shreker/QLProject

2015-12-20 00:12:05 460

转载 如何设计一个 iOS 控件?(iOS 控件完全解析)

前言一个控件从外在特征来说,主要是封装这几点:交互方式显示样式数据使用对外在特征的封装,能让我们在多种环境下达到 PM 对产品的要求,并且提到代码复用率,使维护工作保持在一个相对较小的范围内;而一个好的控件除了有对外一致的体验之外,还有其内在特征:灵活性低耦合

2015-12-19 11:24:39 341

转载 ViewController的关键流程

在最近解决某个问题的时候,发现在ViewDidDisappear中去获取self.navigationController为空。猛然间意识到,原来在VC的生命周期中存在一些细节问题需要注意。而且,最近一段时间,对基于流程(生命周期是特殊的流程)建模的编程思想也开始有些反思。所以就总结了一下VC生命周期的一些问题。先说点比较抽象的东西,关于流程建模的。对于同一个对象而言,往往

2015-12-19 10:45:03 343

转载 iOS崩溃调试的使用和技巧总结

在iOS开发调试过程中以及上线之后,程序经常会出现崩溃的问题。简单的崩溃还好说,复杂的崩溃就需要我们通过解析Crash文件来分析了,解析Crash文件在iOS开发中是比较常见的。现在网上有很多关于解析崩溃信息的博客,但是大多质量参差不齐,或者有些细节没有注意到。今天写一篇博客总结一下我对崩溃调试的使用和技巧,如果有哪些错误或遗漏,还请指点,谢谢!获取崩溃信息在iOS

2015-12-19 10:41:33 619

转载 Objective-C 编码建议(编程习惯,规范)

“神在细节之中”Objective-C 是 C 语言的扩展,增加了动态类型和面对对象的特性。它被设计成具有易读易用的,支持复杂的面向对象设计的编程语言。它是 Mac OS X 以及 iPhone 的主要开发语言。Cocoa 是 Mac OS X 上主要的应用程序框架之一。它由一组 Objective-C 类组成,为快速开发出功能齐全的 Mac OS X

2015-12-18 09:55:54 366

转载 iOS类别(Category)与扩展(Extension)

苹果官方文档Category在iOS开发中使用非常频繁。尤其是在为系统类进行拓展的时候,我们可以不用继承系统类,直接给系统类添加方法,最大程度的体现了Objective-C的动态语言特性。#import@interface NSObject (Category)- (void)myMethod;@end这是一个最简单的Category,作用于NSOb

2015-10-20 13:28:23 280

转载 iOS开发UI篇—iPad和iPhone开发的比较

一、iPad简介1.什么是iPad  一款苹果公司于2010年发布的平板电脑  定位介于苹果的智能手机iPhone和笔记本电脑产品之间  跟iPhone一样,搭载的是iOS操作系统2.iPad的市场情况  截止至2013年10月23日,iPad已经累计销售1.7亿台  在平板市场的占有率高达81% 二、关于

2015-10-14 11:16:46 574

转载 ios学习路线

本文转自http://blog.csdn.net/q199109106q/article/details/8596506

2015-10-13 10:17:13 254

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除