
iOS进阶
低调的进步
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
iOS原生二维码扫描
做iOS的二维码扫描,有两个第三方库可以选择,ZBar和ZXing。今天要介绍的是iOS7.0后AVFoundation框架提供的原生二维码扫描。 首先需要添加AVFoundation.framework框架到你工程中build phase的"Link Binary With Libraries"之下,然后就可以开始了。 一、做好准备工作,搭建UI UI效果如图 IBOut转载 2015-06-17 14:16:39 · 514 阅读 · 0 评论 -
iOS UITableView索引列开发详解
做苹果开发的朋友在地区列表可能会遇到在页面的右侧有一列类似与导航的索引列,这次有机会遇到了,细细研究了一下,原来没有想象中的困难,只需要简单的几步就能做出自己的索引列。本来想和搜索条在一块讲解,后来考虑了一下,这个东西和搜索条功能虽有相似之处,却并非需要一起使用,所以就单独摘出来,独立介绍吧! 索引列看着就很高大上,实际做出来的效果也挺不错的。这个既不需要引入第三方的类库转载 2015-07-08 09:55:30 · 833 阅读 · 0 评论 -
【小测试】你真的知道blocks在Objective-C中是怎么工作的吗?
你真的知道blocks在Objective-C中是怎么工作的吗? 来做个小测试看看吧。 所有的例子都以下版本上测试过。 Apple clang version 4.1 (tags/Apple/clang-421.11.66) (based on LLVM 3.1svn) Target: x86_64-apple-darwin11.4.2 Thread model:转载 2015-07-08 09:38:11 · 358 阅读 · 0 评论 -
在OS X中使用Homebrew
Homebrew可以很方便的进行软件包管理,用官网的一句话来形容就是 Homebrew 使 OS X 更完整。用 gem 来安装您的 gems、用 brew 来搞定它们的依赖包。 安装Homebrew 只需要一条命令,so easy ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/in转载 2015-07-10 21:01:22 · 517 阅读 · 0 评论 -
iOSUI篇--动画(Core Animation)总结
一、简介 IOS 动画主要是指Core Animation框架。官方使用文档地址为:Core Animation Guide。 Core Animation是IOS和OS X平台上负责图形渲染与动画的基础框架。Core Animation可以作用与动画视图或者其他可视元素,为你完成了动画所需的大部分绘帧工作。你只需要配置少量的动画参数(如开始点的位置和结束点的位置)即可使用Core Anima转载 2015-07-26 19:12:21 · 622 阅读 · 0 评论 -
iOS单例模式~~以及单例宏定义
// // JYDModelLocator.h // // Created by jyd on 15/3/20. // Copyright (c) 2015年 jyd. All rights reserved. // // 数据共享类 #import "JYDUser.h" //@class JYDUser; @interface JYDModelLoca原创 2015-06-15 11:14:10 · 711 阅读 · 0 评论 -
IOS Quartz 各种绘制图形用法---实现画图片、写文字、画线、椭圆、矩形、棱形等
/ Only override drawRect: if you perform custom drawing. // An empty implementation adversely affects performance during animation. - (void)drawRect:(CGRect)rect { CGContextRef context = UIGra转载 2015-07-27 21:07:51 · 449 阅读 · 0 评论 -
中文字符ASCII码和NSString相互转换
在xcode中,文件以utf8格式保存。因此,其中变量对象也是以utf8格式保存。不同语言的utf8编码不一样,英文的utf8编码和ascii码一样。 不同语言的每个字符的utf8编码的字节数不一样,字节码也不一样。对于英文字符,查看它的ascii码,很方便,将字符取出来,就是它的ascii码。其实,对于非英文字符,取字符集编码的方式也是这样。这样统称为取ASCII码,在很多文档中也是这样描述的转载 2015-08-24 21:29:06 · 481 阅读 · 0 评论 -
使用CFStringTransform将汉字转换为拼音
之前做通讯录相关的一些App时,有一个比较常用的算法是将汉字转换成拼音。当时采用的做法是:将各个拼音段的首个汉字(按Unicode排序)做成两个数组,一个数组存拼音,另一个数组存拼音对应首个汉字的Unicode。如果要获取某个汉字的拼音,可以折半查找法找的对应拼音。最近无意间发现CFStringTransform这篇文章后,发现系统本身已经提供了一个这样的函数。 CFStringTransf转载 2015-07-21 13:23:41 · 354 阅读 · 0 评论 -
nil,Nil,NULL,NSNull
理解“不存在”的概念不仅仅是一个哲学的问题,也是一个实际的问题。我们是有形宇宙的居民,而原因在于逻辑宇宙的存在不确定性。作为一个逻辑系统的物理体现,电脑面临一个棘手的问题,就是如何用存在表达不存在. 在Objective-C中,有几个不同种类的不存在。这样做的原因要追溯到一个频繁提及的NSHipster,讲解Objective-C如何在C的程序范例以及由Smalltalk启发的面向对象的范例转载 2015-07-21 13:25:05 · 325 阅读 · 0 评论 -
并发编程之GCD(来自Xcode Dev 亮了的原创开发技术博客)
在《并发编程之Operation Queue》中讲了Cocoa并发编程中的Operation Queue,了解了Operation Queue是一个面向对象的并发编程接口,它支持并发数,线程优先级,任务优先级,任务依赖关系等多种配置,可以方便满足各种复杂的多任务处理场景。本篇将接着讲另一种并发编程机制 – GCD(Grand Central Dispatch)。iOS4.0中首度引入GCD,G转载 2015-07-21 13:41:11 · 452 阅读 · 0 评论 -
iOS开发之----让UILabel 垂直方向顶端对齐的代码
原文地址:垂直方向顶端对齐的代码" style="text-decoration:none; color:rgb(62,115,160)">IOS开发之----让UILabel 垂直方向顶端对齐的代码作者:倒計時 VerticalAlignment.h文件 #import typedef enum VerticalAlignment {转载 2015-08-13 09:28:59 · 452 阅读 · 0 评论 -
自学 iOS 开发的一些经验
不知不觉作为 iOS 开发也有两年多的时间了,记得当初看到 OC 的语法时,愣是被吓了回去,隔了好久才重新耐下心去啃一啃。啃了一阵,觉得大概有了点概念,看到 Cocoa 那么多的 Class,又懵了,怎么才能调用系统的相机?怎么保存信息?怎么做一个像 Twitter 个人页那样的页面?总之就是不知道该从哪切入。 现在回想起来,其实路一直都在,而且有很多条,当初如果有人能够指出一条还不错的道,转载 2015-07-21 14:08:25 · 465 阅读 · 0 评论 -
iOS中setNeedsDisplay、setNeedsLayout的作用
1、在Mac OS中NSWindow的父类是NSResponder,而在i OS 中UIWindow 的父类是UIVIew。程序一般只有一个窗口但是会又很多视图。 2、UIView的作用:描画和动画,视图负责对其所属的矩形区域描画、布局和子视图管理、事件处理、可以接收触摸事件、事件信息的载体、等等。 3、UIViewController 负责创建其管理的视图及在低内存的时候将转载 2015-07-21 17:52:05 · 791 阅读 · 0 评论 -
iOS两个强制旋转屏幕的方法
第一个: [cpp] view plaincopy // 状态栏动画持续时间 CGFloat duration = [UIApplication sharedApplication].statusBarOrientationAnimationDuration; [UIView animateWithDuration:duration转载 2015-07-22 17:43:08 · 553 阅读 · 0 评论 -
iOS ViewController生命周期
ViewController ViewController是IOS开发中MVC模式中的C,ViewController是view的controller,ViewController的职责主要包括管理内部各个view的加载显示和卸载,同时负责与其他ViewController的通信和协调。 在IOS中,有两类ViewController,一类是显示内容的,比如UIViewController、U转载 2015-08-03 22:32:53 · 394 阅读 · 0 评论 -
iOS微信支付相关~~
最近要用微信支付功能,在此总结一下! 需要下面第三方支持 备注:JSONKit框架是基于MRC的,如果工程开发环境是ARC的话,请在编译时设定 编译参数 -fno-objc-arc 1、首先到微信开放平台上,申请app及与T进行签约、认证 https://open.we转载 2015-08-30 22:26:10 · 545 阅读 · 0 评论 -
单播、多播(组播)和广播的区别
单播、多播和广播单播”(Unicast)、“多播”(Multicast)和“广播”(Broadcast)这三个术语都是用来描述网络节点之间通讯方式的术语。那么这些术语究竟是什么意思?区别何在? 1.单播:网络节点之间的通信就好像是人们之间的对话一样。如果一个人对另外一个人说话,那么用网络技术的术语来描述就是“单播”,此时信息的接收和传递只在两个节点之间进行。单播在网络中得到了广泛的应用,转载 2015-06-09 22:07:29 · 467 阅读 · 0 评论 -
iOS之设置导航控制器样式以及AttributeText, NSMutableAttributedString
// 设置导航栏的主题 +(void)setupNavTheme { // 设置导航栏样式 UINavigationBar *navBar = [UINavigationBar appearance]; // 1.设置导航条的背景 // 高度不会拉伸,但是宽度会拉伸 [navBar setBackgroundImage:[原创 2015-06-09 17:24:05 · 548 阅读 · 0 评论 -
iOS 使用ZBarSDK扫描条形码和二维码
ZBarSDK,一个比较优秀的开源项目,使用起来也很简单。 ZBarSDK是一个开源的SDK,可从这里下载到源码,该SDK实现了识别和读取各种条形码,包括EAN-13/UPC-A, UPC-E, EAN-8, Code 128, Code 39, Interleaved 2 of 5 和 QR Code。 帮助文档:http://zbar.sourceforge.net/i转载 2015-06-17 14:06:51 · 767 阅读 · 0 评论 -
头部图片可伸缩的TableView
Table列表顶部是一张大图,大图可以随着列表的下拉而放大。 其中IScrollView的代理方法scrollViewDidScroll是重点方法。 #import "ViewController.h" #define Imgwidth 828 #define Imgheight 589 #define ScaleImageVie原创 2015-06-17 12:55:05 · 399 阅读 · 0 评论 -
唐巧的iOS技术博客好文列表
过去几年里我和我的团队做的事情太杂了,甚至还扑在了cocos2d-x上,接下来终于可以专注在iOS和Android原生开发领域了,所以今天特意花了一天时间补课,把唐巧的博客截止到今天(2014.12.19)的好文都看了一遍,特此收藏一些有价值的文章: 设置系统控件的语言,比如用户选择一段文本后跳出来的复制/粘贴等按钮文字的语言程序崩溃时不再傻乎乎地跳到main.m里,而是停在代码处(文中方法转载 2015-06-18 13:36:06 · 656 阅读 · 0 评论 -
LeetCode编程备注
LeetCode 对基础数据结构和基础算法是很好的训练和考查。 (1)涉及的重要数据结构: 数组(一维,多维),链表,栈,队列,二叉树,无向图,散列,。。。 (2)涉及的重要算法技术: 贪心,动态规划,分治(递归),回溯(剪枝),搜索(广搜,深搜),。。。 刷题后的一些体会(以下说法不绝对): 1,一般来说,贪心的时间复杂度在O(n),空间复杂度是O(1) 或 O(n)转载 2015-06-18 11:18:10 · 682 阅读 · 0 评论 -
百度面试相关问题
百度面试 FEB 11TH, 2014 | COMMENTS 百度移动云可穿戴部门的面试经历,面试官都非常热情友好,一上来到弄的我挺不好意思的。下面记录一下自己的面试过程,因为我真的没啥面试经验,需要总结下 1面 Objective C runtime library:Objective C的对象模型,block的底层实现结构,消息发送,消息转载 2015-06-18 13:32:51 · 332 阅读 · 0 评论 -
Objective-C Runtime Programming Guide
-- [1] 版本和平台 -- [2] 与Runtime System交互 -- [3] 方法的动态决议 -- [4] 消息转发 -- [5] 类型编码 -- [6] 属性声明 [1] 版本和平台 Runtime System对于Objective-C来说就好比是它的操作系统,或者说是运行的支撑平台,转载 2015-06-01 11:13:45 · 338 阅读 · 0 评论 -
iOS中block深入原理研究
[0. Brief introduction of block] Block是iOS4.0+ 和Mac OS X 10.6+ 引进的对C语言的扩展,用来实现匿名函数的特性。 用维基百科的话来说,Block是Apple Inc.为C、C++以及Objective-C添加的特性,使得这些语言可以用类lambda表达式的语法来创建闭包。 用Apple文档的话来说,A block is转载 2015-06-21 16:29:23 · 602 阅读 · 0 评论 -
XMPP 基础介绍 iOS导入XMPPFramework框架
即时通讯技术(IM -- Instant Messaging)支持用户在线实时交谈。如果要发送一条信息,用户需要打开一个小窗口,以便让用户及其朋友在其中输入信息并让交谈双方都看到交谈的内容。 有许多的IM系统,如AOL、Yahoo IM、 MSN以及QQ,它们最大的区别在于各自通讯协议的实现,所以即时通讯技术的核心在于它的传输协议 协议用来说明信息在网络上如何传输,如果有了统一的传输协议,原创 2015-06-01 14:05:11 · 841 阅读 · 0 评论 -
iOS之CALayer介绍
在iOS中,你能看得见摸得着的东西基本上都是UIView,比如一个按钮、一个文本标签、一个文本输入框、一个图标等等,这些都是UIView,其实UIView之所以能显示在屏幕上,完全是因为它内部的一个图层 在创建UIView对象时,UIView内部会自动创建一个图层(即CALayer对象),通过UIView的layer属性可以访问这个层 @property(nonatomic,readonly,原创 2015-06-02 12:35:36 · 360 阅读 · 0 评论 -
iOS简单的动画效果实现
在刷新微博的时候:会有一个短动画会显示有多少个新的微博。然后动画消失掉。 我简单的实现了一下,代码如下: /** * 用于显示最新的直播数据的个数 * @example 有10个新的直播数据 * @param count 10 */ -(void)showStatusButton:(int)count { //1.创建按钮 UIBut原创 2015-06-02 09:50:46 · 432 阅读 · 0 评论 -
Core Animation继承结构和基础介绍
iOS Develop Library 给出了如下图示 其中继承结构如下: CATransition 提供了一个图层变化的过渡效果,它能影响图层的整个内容。动画进行的时候淡入淡出(fade)、推(push)、显露(reveal)图层的内容。这些过渡效果可以扩展到你自己定制的 Core Image 滤镜。 C原创 2015-06-02 10:27:44 · 504 阅读 · 0 评论 -
iOS学习之Map,定位,标记位置的使用
iOS上使用地图比Android要方便,只需要新建一个MKMapView,addSubView即可。这次要实现的效果如下: 有标注(大头针),定位,地图。 1、添加地图 1.1 新一个Single View app ,选择默认项,创建后,在ViewController.h #import #import #import @interface Vie转载 2015-06-05 15:21:34 · 381 阅读 · 0 评论 -
CocoaAsyncSocket使用笔记之GCDAsyncUdpSocket
先去github的网站下载最新的包,然后先看看介绍。 https://github.com/robbiehanson/CocoaAsyncSocket/wiki/Intro_GCDAsyncSocket 网上很多都是老版本的帖子。官方已经推出了GCDAsyncSocket来代替以前老的AsyncSocket。 1、引入GCDAsyncSocket所需要的框架,CF原创 2015-06-08 10:29:34 · 2954 阅读 · 0 评论 -
iOS之Git简介和Git常用命令
git是一款开源的分布式版本控制工具 在世界上所有的分布式版本控制工具中,git是最快、最简单、最流行的 作者是Linux之父:Linus Benedict Torvalds 当初开发git仅仅是为了辅助Linux内核的开发(管理源代码) git现在国外已经非常普及,国内并未普及(在慢慢普及) 越来越多的开源项目已经转移到git 在很多情况下,git的速度远远比SVN快 SVN是原创 2015-06-07 21:08:17 · 433 阅读 · 0 评论 -
GCDAsyncSocket Github上 Readme 翻译
Asynchronous socket networking library for Mac and iOS 对于Mac和IOS的异步Socket CocoaAsyncSocket provides easy-to-use and powerful asynchronous socket libraries for Mac and iOS. The classes are descri转载 2015-06-08 16:15:32 · 465 阅读 · 0 评论 -
初识BeeFrameWork
初识BeeFramework 之前在InfoQ上看到唐巧对老郭的采访,采访的内容就是关于BeeFramework。看完那篇采访,感觉应该是个不错的框架,于是乎想学一学。正好,这段时间,工作上有点空闲。也把自己的学习过程记录一下。 简介BeeFramework新建Bee项目第一个界面 简介BeeFramework BeeFramework是一个semi转载 2015-06-09 09:19:15 · 439 阅读 · 0 评论 -
GCDAsyncUdpSocket 组播监听端口接收数据
客户端开发一般是发送数据给服务端。这次反过来了,把客户端作为服务端了,监听对应端口并接收数据. 直接上代码: .......h文件 @interface ListenServerData : NSObject { } - (id)initWithData; @end ........m文件 #import "ListenSer转载 2015-06-09 15:14:33 · 1341 阅读 · 0 评论 -
UIScrollView 实践经验
UIScrollView(包括它的子类 UITableView 和 UICollectionView)是 iOS 开发中最常用也是最有意思的 UI 组件,大部分 App 的核心界面都是基于三者之一或三者的组合实现。UIScrollView 是 UIKit 中为数不多能响应滑动手势的 view,相比自己用 UIPanGestureRecognizer 实现一些基于滑动手势的效果,用 UI转载 2015-09-07 13:58:27 · 385 阅读 · 0 评论