Cocoa框架
文章平均质量分 94
Sodaslay
这个作者很懒,什么都没留下…
展开
-
细数 AutoLayout 以来 UIView 和 UIViewController 新增的相关 API
原文地址:http://www.cocoachina.com/ios/20141026/10045.html细数AutoLayout以来UIView和UIViewController新增的相关API – UIViewController篇UILayoutSupport@property(nonatomic,readonly,retain)idtopLayoutGui...转载 2019-03-21 18:20:30 · 853 阅读 · 0 评论 -
iOS自定义控件教程(六)UIResponder Chain
此方法可实现点击穿透、点击下层视图功能。 一. hitTest:withEvent:调用过程iOS系统检测到手指触摸(Touch)操作时会将其放入当前活动Application的事件队列,UIApplication会从事件队列中取出触摸事件并传递给key window(当前接收用户事件的窗口)处理,window对象首先会使用hitTest:withEvent:方法寻找此转载 2017-05-14 11:39:00 · 597 阅读 · 0 评论 -
Quartz 2D编程指南(4) - 颜色和颜色空间
转载自Cocoa China,原文地址:http://www.cocoachina.com/ios/20111116/3517.html本文为论坛会员德鲁伊编写的关于Quartz 2D编程的系列文章不同的设备(显示器、打印机、扫描仪、摄像头)处理颜色的方式是不同的。每种设备都有其所能支持的颜色值范围。一种设备能支持的颜色可能在其它设备中无法支持。为了有效的使用颜色及转载 2017-05-13 12:08:17 · 395 阅读 · 0 评论 -
iOS自定义控件教程(五)一个鲜活的实例
本文译自How to build a custom control in iOS。大家要是有什么问题,可以直接在twitter上联系原作者,当然也可以在最后的评论中回复我。下面先来看看目录:子类化UIControl绘制用户界面绘制背景绘制用户的可操作区域绘制手柄跟踪用户的操作开始跟踪持续跟踪结束跟踪Targ转载 2017-05-13 15:45:46 · 696 阅读 · 0 评论 -
iOS自定义控件教程(四)UIControl - 幕后的英雄
上一篇文章我们介绍了UIView的触摸事件响应和简单动画,但是并没有将触摸事件封装。我们今天介绍Demo中最后一部分 —— 输出响应事件。Github下载源码我么知道Objective-C是采用消息机制(messaging)调用方法的,例如我们调用UIView的init方法UIView * simpleView = [[UIView alloc] init];简单的描述转载 2017-05-13 15:30:31 · 825 阅读 · 0 评论 -
iOS自定义控件教程(三)UIView动画入门
上一篇文章我们介绍了UIView的触摸响应链原理,顺便学习UIView的基本属性和方法。在iOS自定义控件教程(二)关于响应链的那些事中我们讲解了触摸原理,但并未具体实现其功能,接下来我们具体讲讲点击效果的实现和响应的动画效果的实现。最终实现的效果:Github下载源码触摸响应链UIResponderUIView继承自UIResponder(响应链类),继承了相应的响应链方法:转载 2017-05-13 15:29:34 · 407 阅读 · 0 评论 -
iOS自定义控件教程(二)关于响应链的那些事
上一次我们一起做一个多段选择的自定义控件,顺便学习UIView的基本属性和方法。在iOS自定义控件教程(一)中我们完成了UILabel布局的工作,接下来我们一起研究一下触摸响应链原理。最终实现的效果:Github下载源码链式响应原理先简单普及一下响应链原理,我们可以简单地认为iPhone屏幕就是一个容器,我们看到的各种控件(UIView和UIView子类)都是屏幕(UIWind转载 2017-05-13 15:28:49 · 311 阅读 · 0 评论 -
iOS自定义控件教程(一)看看吧,总会得到你想要的
简介本文将是一个关于Cocoa Touch中UIKit框架的自定义控件系列教程,我们将从基础开始,由浅入深,分析讲解自定义控件的相关知识和技巧。基础概念,给新人看基础知识UIKit是iOS系统使用的界面框架UIKit中最基本的类是UIView,也就是界面的基础操作类iOS使用的渲染框架叫Core Graphics,所以才回有CG开头的一堆基础类型转载 2017-05-13 15:28:06 · 388 阅读 · 0 评论 -
Facebook Shimmer 实现原理
转载自Cocoa China,原文地址:http://www.cocoachina.com/industry/20140818/9405.htmlFacebook 最新的 App Paper 包含了很多丰富的动画元素,为此 Facebook 甚至设计了一款 iOS 的动画引擎 pop。整个 Paper 的动画设计中另一个很有特色的动画是文字的闪光效果。 这个效果其实和转载 2017-05-13 12:48:34 · 1021 阅读 · 0 评论 -
iOS图像处理第2部分:核心图形,核心图像,GPUImage
转载自Cocoa China,原文地址:http://www.cocoachina.com/ios/20140925/9756.html学习在iOS中处理图像和创建酷炫的效果!欢迎来到本系列教程的第二节,iOS中的图像!在本系列的第一节,我们学会了如何访问和修改图像的原始像素值。在本系列的第二节或者说最终节中,你将学习如何使用其他的库来执行同样的转载 2017-05-13 11:51:42 · 530 阅读 · 0 评论 -
Quartz 2D编程指南(1) - 概览
转载自Cocoa China,原文地址:http://www.cocoachina.com/ios/20111111/3486.htmlQuartz 2D编程指南是论坛会员德鲁伊翻译的国外的Quartz 2D一系列学习资料,供大家参考Quartz 2D是一个二维图形绘制引擎,支持iOS环境和Mac OS X环境。我们可以使用Quartz 2D API来实现许多功能,如基本路转载 2017-05-13 11:59:59 · 396 阅读 · 0 评论 -
Quartz 2D编程指南(2) - 图形上下文(Graphics Contexts)
转载自Cocoa China,原文地址:http://www.cocoachina.com/bbs/read.php?tid=78029一个Graphics Context表示一个绘制目标。它包含绘制系统用于完成绘制指令的绘制参数和设备相关信息。Graphics Context定义了基本的绘制属性,如颜色、裁减区域、线条宽度和样式信息、字体信息、混合模式等。我们可以通过几种方式转载 2017-05-13 12:01:26 · 313 阅读 · 0 评论 -
从NSArray看类簇
原文地址:http://www.cocoachina.com/ios/20141219/10696.htmlClass ClustersClass Clusters(类簇)是抽象工厂模式在iOS下的一种实现,众多常用类,如NSString、NSArray、NSDictionary以及NSNumber都运作在这一模式下,它是接口简单性和扩展性的权衡体现,在我们完全不知情的转载 2016-10-19 22:21:47 · 500 阅读 · 0 评论 -
UIAlertView内容左对齐
【iOS8以上版本,苹果推荐使用UIAlertController替代UIAlertView 跟 UIActionSheet】网上有说以前可以通过-(void)willPresentAlertView:(UIAlertView *)alertView来修改alertView的subview的代码,但是在iOS7以上的系统没有作用。而且通过-(void)willPresentAl转载 2016-04-14 15:09:38 · 2173 阅读 · 0 评论 -
Quartz 2D编程指南(3) - 路径(Paths)
转载自Cocoa China,原文地址:http://www.cocoachina.com/bbs/read.php?tid=82621路径定义了一个或多个形状,或是子路径。一个子路径可由直线,曲线,或者同时由两者构成。它可以是开放的,也可以是闭合的。一个子路径可以是简单的形状,如线、圆、矩形、星形;也可以是复杂的形状,如山脉的轮廓或者是涂鸦。图3-1显示了一些我们可以创建的路径。转载 2017-05-13 12:02:50 · 418 阅读 · 0 评论 -
Quartz 2D编程指南(5) - 变换(Transforms)
转载自Cocoa China,原文地址:http://www.cocoachina.com/ios/20111215/3725.html 本文由论坛会员德鲁伊分享 PDF文档存储依赖于分辨率的向量图形、文本和位图,并用于程序的一系列指令中。一个PDF文档可以包含多页的图形和文本。PDF可用于创建跨平台、只读的文档,也可用于绘制依赖于分辨率的图形。转载 2017-05-13 12:12:07 · 366 阅读 · 0 评论 -
Advanced Auto Layout Toolbox
原文地址:https://www.objc.io/issues/3-views/advanced-auto-layout-toolbox/Auto Layout was introduced in OS X 10.7, and one year later it made its way into iOS 6. Soon apps on iOS 7 will be expected to...转载 2019-03-21 18:12:07 · 2253 阅读 · 0 评论 -
UIViewController 中常见时序记录(layoutSubViews 与 XXXXappear/disappear 相关)
UIViewController中的Xib中的尺寸是 (320, 568)。2015-06-18 22:14:00.055 TestProject[10783:607] initWithNibName2015-06-18 22:14:00.086 TestProject[10783:607] viewDidLoad2015-06-18 22:14:00.086 TestProj原创 2015-06-18 22:21:48 · 952 阅读 · 0 评论 -
iOS 给字符串添加删除线,下划线效果遇到的坑(10.3 与 8.1 系统)
原文地址:http://www.jianshu.com/p/f85165b8fc49本来以为挺简单的效果,没想到居然有点小坑转载 2017-09-04 17:22:05 · 3098 阅读 · 0 评论 -
CoreData 的使用以及 CoreData 中的多线程问题
CoreData的使用1.coreData简介 coreData是苹果对sqlite的封装,不用操作sqlite语句,他提供了对象关系映射功能,能将oc对象转化成数据,保存在sqlite中,也能将保存的数据还原成oc对象; coredata有两种队列:私有队列,主队列 coreData中的主要包括这几个部分:管理对象上下文,数据持久化协调器,模型文件转载 2017-08-14 22:51:10 · 2716 阅读 · 0 评论 -
AutoLayout之intrinsicContentSize,Content Hugging Priority,Content Compression Resistance Priority
iOS6中引入了AutoLayout,极大的方便了UI元素的布局,现在已经过去一年了,并且大部分设备的系统也已经升级到了iOS6,是时候要使用此项技术了。在AutoLayout的学习中有两个概念官方文档讲述的不是很清楚,今天花费了2个小时的时间研究了一下,在此总结一下。Content Hugging 和 Content Compression Resistance这两个属性对有in转载 2016-07-19 18:39:06 · 453 阅读 · 0 评论 -
iOS 进阶(一)block 与 property
转载自Cocoa China,原文地址:http://www.cocoachina.com/ios/20170503/19165.html这篇读书笔记主要介绍了C语言内存分配、block疑难点、property的深入理解,自己对这三块做了系统性的总结,希望对你有所帮助。C语言内存分配Objective-C从名字来看就可以知道是一门超C语言,所以了解C语言的内转载 2017-05-14 12:44:13 · 478 阅读 · 0 评论 -
iOS 进阶(二)Objective-C 底层原理
转载自Cocoa China,原文地址:http://www.cocoachina.com/ios/20170504/19174.html这篇读书笔记主要介绍了Objective-C底层的一些东西,比如Objective-C对象模型、objc_msgSend消息发送原理、方法混写(Method Swizzling)和ISA混写(ISA Swizzling)。Object转载 2017-05-14 12:47:14 · 378 阅读 · 0 评论 -
招聘一个靠谱的 iOS 开发
转载自sunnyxx的技术博客:http://blog.sunnyxx.com/2015/07/04/ios-interview/近一年内陆续面试了不少人了,从面试者到面试官的转变让我对 iOS 招聘有了更多的感受。经过了前段时间的一大波面试,我们终于找到了志同道合的小伙伴,面试也暂时告一段落了。总结下面试人过程中的感受,你也可以读到我们对简历、算法、性格、iOS 基础、底层知转载 2017-05-14 12:50:47 · 512 阅读 · 0 评论 -
Gesture Recognizers 与触摸事件分发
一.Gesture RecognizersGesture Recognizers是在iOS3.2引入的,可以用来识别手势、简化定制视图事件处理的对象。Gesture Recognizers的基类为UIGestureRecognizer,这一个抽象基类,定义了实现底层手势识别行为的编程接口。在UIKit框架中提供了6个具体的手势识别类,用来识别常见的手势。这6个手势识别器类为:U转载 2017-05-16 17:11:28 · 422 阅读 · 0 评论 -
UIGestureRecognizer 及自定义手势
原文地址:http://www.jianshu.com/p/c832eff9aca5在unity开发中,触屏手势在我看来是以手指ID号(手指的身份)以及手指状态为标准界定判断手势的类型的;一些插件感觉和iOS中苹果封装的差不多,因此就UIGestureRecognizer这个类关于API使用进行一下初步探索。。。一、UIGestureRecognizer转载 2017-05-16 17:51:15 · 1169 阅读 · 0 评论 -
深入理解 RunLoop
转载自Cocoa China,原文地址:http://www.cocoachina.com/ios/20150601/11970.html相关内容:sunnyxx分享RunLoop深入研究RunLoop与线程保活RunLoop 是 iOS 和 OS X 开发中非常基础的一个概念,这篇文章将从 CFRunLoop 的源码入手,介绍 RunLoop 的概念以及底转载 2017-05-14 15:37:39 · 430 阅读 · 0 评论 -
Xcode中的project.pbxproj冲突怎么解决
知乎:http://www.zhihu.com/question/19763504转载 2015-06-12 11:19:06 · 3249 阅读 · 0 评论 -
Quartz 2D编程指南(7) - PDF文档的创建、显示及转换
转载自Cocoa China,原文地址:http://www.cocoachina.com/ios/20111215/3725.html本文由论坛会员德鲁伊分享 PDF文档存储依赖于分辨率的向量图形、文本和位图,并用于程序的一系列指令中。一个PDF文档可以包含多页的图形和文本。PDF可用于创建跨平台、只读的文档,也可用于绘制依赖于分辨率的图形。转载 2017-05-13 12:22:23 · 1194 阅读 · 0 评论 -
Quartz 2D编程指南(6) - 阴影(Shadows)
原文地址:http://blog.csdn.net/stanley1984_21/article/details/6902819阴影是绘制在一个图形对象下的且有一定偏移的图片,它用于模拟光源照射到图形对象上所形成的阴影效果,如果7-1所示。文本也可以有阴影。阴影可以让一幅图像看上去是立体的或者是浮动的。 阴影有三个属性:转载 2017-05-13 12:21:03 · 400 阅读 · 0 评论 -
有趣的Autolayout示例-Masonry实现
原文地址:http://www.cocoachina.com/ios/20150527/11936.html前言好久没有写Blog了,这段时间有点忙。本文举了3个比较有“特点”的Autolayout例子,源于微博上好友的提问,感觉比较有意思,也比较有代表性,就写了出来,分享给大家~至于为什么用Masonry,那是因为它好用啊!(被问到过有关Masonry的问题,就索转载 2016-04-26 17:16:00 · 371 阅读 · 0 评论 -
iOS-图片处理的一些工具方法
图片拉伸和尺寸变换图片拉伸 :?1- (UIImage *)stretchableImageWithLeftCapWidth:(NSInteger)leftCapWidth topCapHeight:(NSInteger)topCapHeight;一般 leftCapWidth =原创 2016-04-26 17:11:59 · 1281 阅读 · 0 评论 -
据说下面两个问题都能答对的不到1%
Question1:@interface Rectangle : NSObject@property (nonatomic, copy) NSMutableString *name;@end@implementation Rectangle- (void)setName:(NSMutableString *)name { _name = n原创 2016-03-17 14:19:45 · 584 阅读 · 0 评论 -
iOS7导航栏遮盖问题的解决
在开发iOS7的界面的时候,有时候你会发现UIViewController里的subView有时会被导航栏遮盖,原因是iOS7鼓励全屏布局,UIViewController中的self.view的坐标原点是从导航栏的原点开始算起,如果你不想self.view的起始点从导航栏原点开始计算,你只要设定:self.edgesForExtendedLayout = UIRectEdgeNone转载 2015-06-18 12:51:30 · 782 阅读 · 0 评论 -
Cocoa框架
是什么因素使一个程序成为Cocoa程序呢?肯定不是编程语言,因为在Cocoa开发中您可以使用各种语言;也不是开发工具,因为您在命令行上就可以创建Cocoa程序(虽然那会使开发过程变得复杂,且需要消耗大量时间)。那么,所有Cocoa程序的共同点是什么?是什么使它们变得与众不同?答案是这些程序都是由一些对象组成,而这些对象最终都是从NSObject这个根类继承下来的;还有,这些程序都是基于Object转载 2012-11-20 09:09:26 · 1120 阅读 · 0 评论 -
Cocoa框架For iOS
Cocoa框架是iOS应用程序的基础,了解Cocoa框架,对开发iOS应用有很大的帮助。1、Cocoa是什么?Cocoa是OS X和 iOS操作系统的程序的运行环境。是什么因素使一个程序成为Cocoa程序呢?不是编程语言,因为在Cocoa开发中你可以使用各种语言;也不是开发工具,你可以在命令行上就可以创建Cocoa程序。Cocoa程序可以这么说,它是由一些对象组成,而这些对象的转载 2014-01-10 16:58:51 · 936 阅读 · 0 评论 -
CoreData双向关系/删除规则
双向关系双向的时候,只用指定一边,另外一边自动指定,比如,如果一个帐号只有一个联系人,而一个联系人对应一个帐号的话,那么帐号表和联系人表就是一一对应的关系,将他们指定为双向的,如下面将cnt1.act = act1; cnt2.act = cnt2;则act1.cnt和act2.cnt也是有值的。注释掉的两句可有可无。删除规则这里将Account表下面的cnt的删除规则设定转载 2013-04-19 13:38:02 · 827 阅读 · 0 评论 -
SCNetworkReachability 使用说明
在douban应用中,需要联网是必须的,看书发现,apple对于需要联网的应用要求很高,必须要进行联网检查,现在还任务在身,但是忙中抽闲,看了看SCNetworkReachability,用于进行联网检查的。下面记录一下。说明引用网上网友的,特此注明、、、一.基本知识在需要联网的iPhone程序中,我们首先需要检查网络的状态,如果不能连接网络则告诉用户程序不能使用的原因是没有网转载 2012-12-17 10:01:49 · 1028 阅读 · 0 评论 -
Cocoa中监听、观察和通知的五种方法
本文介绍Objective C中实现观察者模式(也被称为广播者/监听者、发布/注册或者通知)的五种方法以及每种方法的价值所在。该文章将包括:1 手动广播者和监听者(Broadcaster and listeners)2 键-值观察(Key Value Observing)3 通知中心(Notification center)4 上下文通知(Context notificat转载 2013-04-17 09:59:18 · 982 阅读 · 0 评论 -
NSTextField与NSTextView
Cocoa 提供了两种文本编辑控件 [1]:NSTextView 和 NSTextField。从表面上看,前者比后者功能丰富,前者一般用作复杂的文字编辑,后者一般接受简单的数据输入。二者处理 Enter 和 Tab 键的行为不同。NSTextView 的方式和通常的编辑器相同:给编辑内容添加换行或者 tab 字符。NSTextField 的方式则类似于其它非文本编辑的 Cocoa 控件:E转载 2012-12-18 10:49:22 · 8202 阅读 · 1 评论