MacOSX Dev
文章平均质量分 80
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 · 852 阅读 · 0 评论 -
iOS-图片处理的一些工具方法
图片拉伸和尺寸变换图片拉伸 :?1- (UIImage *)stretchableImageWithLeftCapWidth:(NSInteger)leftCapWidth topCapHeight:(NSInteger)topCapHeight;一般 leftCapWidth =原创 2016-04-26 17:11:59 · 1280 阅读 · 0 评论 -
Cocoa线程安全/非线程安全的类和函数汇总
线程安全的类和函数下面这些类和函数通常被认为是线程安全的。你可以在多个线程里面使用它们的同一个实例,而无需获取一个锁。NSArrayNSAssertionHandlerNSAttributedStringNSCalendarDateNSCharacterSetNSConditionLockNSConnectionNSDataNSDateNSDecimal functionsNSDe转载 2015-06-11 00:44:46 · 1348 阅读 · 0 评论 -
iOS多线程编程指南(三)Run Loop
Run LoopsRun loops是线程相关的的基础框架的一部分。一个run loop就是一个事件处理的循环,用来不停的调度工作以及处理输入事件。使用run loop的目的是让你的线程在有工作的时候忙于工作,而没工作的时候处于休眠状态。Run loop的管理并不完全自动的。你仍然需要设计你的线程代码在合适的时候启动run loop并正确响应输入事件。Cocoa和Core Fundatio转载 2012-11-25 00:22:23 · 1144 阅读 · 0 评论 -
NSTableView中设置selectedRow的高亮颜色
有两种方法:第一种是继承NSCell: 第二种是继承NSTableView。在tableView中,使用[plain] view plaincopyprint?[myView setUsesAlternatingRowBackgroundColors:NO];//取消行与行之间蓝白交替显示的背景 [my原创 2012-11-06 21:29:19 · 2785 阅读 · 0 评论 -
Cocoa框架
是什么因素使一个程序成为Cocoa程序呢?肯定不是编程语言,因为在Cocoa开发中您可以使用各种语言;也不是开发工具,因为您在命令行上就可以创建Cocoa程序(虽然那会使开发过程变得复杂,且需要消耗大量时间)。那么,所有Cocoa程序的共同点是什么?是什么使它们变得与众不同?答案是这些程序都是由一些对象组成,而这些对象最终都是从NSObject这个根类继承下来的;还有,这些程序都是基于Object转载 2012-11-20 09:09:26 · 1120 阅读 · 0 评论 -
关于oneway void
在 XCode 4.2 (with LLVM):里 -(void)release {} 会弹出警告 warning: Semantic Issue: Conflicting distributed object modifiers on return type in implementation of 'release' 为了去掉警告 修改如转载 2014-04-27 19:59:41 · 708 阅读 · 0 评论 -
为已有的XCode工程创建Git仓库
XCode 会自动为新建的工程创建本地 Git 仓库,但是如何为已有的工程创建 Git 仓库呢?Google 到下面这篇文章,贴在下面了。原文链接:点击这里其中 ignore文件下载为:https://github.com/github/gitignore/blob/master/Objective-C.gitignoreCreating a git repository for转载 2014-05-07 16:17:48 · 1027 阅读 · 0 评论 -
深入浅出Cocoa之Bonjour网络编程
深入浅出Cocoa之Bonjour网络编程罗朝辉 (http://www.cnblogs.com/kesalin/)本文遵循“署名-非商业用途-保持一致”创作公用协议 本文高度参考自 Tutorial: Networking and Bonjour on iPhone,在那个帖子里 iphone 版本的代码采用的是 MIT 开源协议,所以本例子中的 Mac 版本转载 2014-05-07 16:15:21 · 1060 阅读 · 0 评论 -
iOS中自定义绘图的两种实现方式
在日常打应用中,有的时候我们需要自己在UIView中自定义绘制一些线条来达到应用打效果,首先我们想到打就是在UIView中打- (void)drawRect:(CGRect)rect方法中进行线条的绘制。不错,我们是可以这么搞,而且这么搞也比较打不错,但是唯一令人烦心就是在这个方法中写打绘制方法,都是openGL原生态的方法(也就是c语言的语法),一会儿oc,一会儿c是有点儿晕乎乎的,所以转载 2014-05-06 09:22:26 · 1410 阅读 · 0 评论 -
将一个NSImage实例保存成图片文件
这里例子中将NSImage对象以png的格式保存到本地硬盘。- (void )saveImage:(NSImage *)image{ [image lockFocus]; //先设置 下面一个实例 NSBitmapImageRep *bits = [[[NSBitmapImageRep alloc]initWithFocusedViewRect:NS转载 2013-08-18 18:17:32 · 5744 阅读 · 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 · 1027 阅读 · 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 评论 -
iOS多线程编程指南-前言
线程是单个应用中可以并发执行多个代码路径的多种技术之一。虽然更新的技术如操作对象(Operation objects)和Grand Central Dispatch(GCD),提供一个更加现代化和高效率的基础设施来实现多核并发,但是Mac OS X和iOS也提供一套接口来创建和管理线程。本文档介绍了Mac OS X上面的可用线程包,并且演示如何使用它们。本文档还描述了在你的应用中多线程代码同步转载 2012-11-25 00:19:16 · 457 阅读 · 0 评论 -
理解KVC与KVO(键-值-编码与键-值-监看)
KVC(Key-Value Coding)和KVO(Key-Value Observing)可能是Objective-C中最强大最实用的功能之一。 下面的几个例子可以帮你更好的理解它们。 原文作者: Marcus Zarra 原文地址 当通过KVC调用对象时KVC(Key-Value Coding)和KVO(Key-Value Observing)可能是Objective-C中转载 2013-03-22 10:11:29 · 1289 阅读 · 0 评论 -
CocoaPods 报错
weifansdeMacBook-Pro:CocoaPodsTest weifans$ pod installfatal: Not a git repository (or any of the parent directories): .gitfatal: Not a git repository (or any of the parent directories): .gitfat转载 2016-06-12 10:36:50 · 577 阅读 · 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 · 2248 阅读 · 0 评论 -
自定义 Xcode 工程模版与文件模版
原文地址:http://blog.csdn.net/lizhongfu2013/article/details/27672749一、前序不管你是新手还是老鸟,开发中都要创建项目和创建文件,例如:创建工程 ->选择模版 ->新建项目打开工程,新建文件每次都要这样从一个空项目或者空文件开始,自己转载 2018-01-01 20:23:42 · 1973 阅读 · 0 评论 -
CoreData 的使用以及 CoreData 中的多线程问题
CoreData的使用1.coreData简介 coreData是苹果对sqlite的封装,不用操作sqlite语句,他提供了对象关系映射功能,能将oc对象转化成数据,保存在sqlite中,也能将保存的数据还原成oc对象; coredata有两种队列:私有队列,主队列 coreData中的主要包括这几个部分:管理对象上下文,数据持久化协调器,模型文件转载 2017-08-14 22:51:10 · 2716 阅读 · 0 评论 -
Xcode 编译 Undefined symbols for architecture xxx 错误总结
每次遇到这种错误就头痛,不知道要害死多少脑细胞了,就在这里做个总结吧可能会遇到这几种错误:Undefined symbols for architecture armv7Undefined symbols for architecture armv7sUndefined symbols for architecture arm64Undefined symbols fo原创 2017-05-14 11:47:47 · 927 阅读 · 0 评论 -
KVC KVO 高阶应用
本文为投稿文章,作者:Zhiyi(博客)KVC, KVO作为一种魔法贯穿日常Cocoa开发,笔者原先是准备写一篇对其的全面总结,可网络上对其的表面介绍已经够多了,除去基本层面的使用,笔者跟大家谈下平常在网络上没有提及的KVC, KVO进阶知识。旨在分享交流。目录:KVC的消息传递KVC容器操作KVC与容器类(集合代理对象)KVO和转载 2017-05-17 23:41:35 · 393 阅读 · 0 评论 -
Quartz 2D编程指南(7) - PDF文档的创建、显示及转换
转载自Cocoa China,原文地址:http://www.cocoachina.com/ios/20111215/3725.html本文由论坛会员德鲁伊分享 PDF文档存储依赖于分辨率的向量图形、文本和位图,并用于程序的一系列指令中。一个PDF文档可以包含多页的图形和文本。PDF可用于创建跨平台、只读的文档,也可用于绘制依赖于分辨率的图形。转载 2017-05-13 12:22:23 · 1192 阅读 · 0 评论 -
Quartz 2D编程指南(6) - 阴影(Shadows)
原文地址:http://blog.csdn.net/stanley1984_21/article/details/6902819阴影是绘制在一个图形对象下的且有一定偏移的图片,它用于模拟光源照射到图形对象上所形成的阴影效果,如果7-1所示。文本也可以有阴影。阴影可以让一幅图像看上去是立体的或者是浮动的。 阴影有三个属性:转载 2017-05-13 12:21:03 · 399 阅读 · 0 评论 -
Quartz 2D编程指南(5) - 变换(Transforms)
转载自Cocoa China,原文地址:http://www.cocoachina.com/ios/20111215/3725.html 本文由论坛会员德鲁伊分享 PDF文档存储依赖于分辨率的向量图形、文本和位图,并用于程序的一系列指令中。一个PDF文档可以包含多页的图形和文本。PDF可用于创建跨平台、只读的文档,也可用于绘制依赖于分辨率的图形。转载 2017-05-13 12:12:07 · 364 阅读 · 0 评论 -
Quartz 2D编程指南(3) - 路径(Paths)
转载自Cocoa China,原文地址:http://www.cocoachina.com/bbs/read.php?tid=82621路径定义了一个或多个形状,或是子路径。一个子路径可由直线,曲线,或者同时由两者构成。它可以是开放的,也可以是闭合的。一个子路径可以是简单的形状,如线、圆、矩形、星形;也可以是复杂的形状,如山脉的轮廓或者是涂鸦。图3-1显示了一些我们可以创建的路径。转载 2017-05-13 12:02:50 · 417 阅读 · 0 评论 -
Quartz 2D编程指南(4) - 颜色和颜色空间
转载自Cocoa China,原文地址:http://www.cocoachina.com/ios/20111116/3517.html本文为论坛会员德鲁伊编写的关于Quartz 2D编程的系列文章不同的设备(显示器、打印机、扫描仪、摄像头)处理颜色的方式是不同的。每种设备都有其所能支持的颜色值范围。一种设备能支持的颜色可能在其它设备中无法支持。为了有效的使用颜色及转载 2017-05-13 12:08:17 · 394 阅读 · 0 评论 -
iOS图像处理第2部分:核心图形,核心图像,GPUImage
转载自Cocoa China,原文地址:http://www.cocoachina.com/ios/20140925/9756.html学习在iOS中处理图像和创建酷炫的效果!欢迎来到本系列教程的第二节,iOS中的图像!在本系列的第一节,我们学会了如何访问和修改图像的原始像素值。在本系列的第二节或者说最终节中,你将学习如何使用其他的库来执行同样的转载 2017-05-13 11:51:42 · 529 阅读 · 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 · 395 阅读 · 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 · 312 阅读 · 0 评论 -
iOS 保持界面流畅的技巧
原文地址:http://blog.ibireme.com/2015/11/12/smooth_user_interfaces_for_ios/这篇文章会非常详细的分析 iOS 界面构建中的各种性能问题以及对应的解决思路,同时给出一个开源的微博列表实现,通过实际的代码展示如何构建流畅的交互。Index演示项目屏幕显示图像的原理卡顿产生的原因和解决方案CPU转载 2016-10-26 18:37:03 · 569 阅读 · 0 评论 -
关于 iOS 10 中 ATS 的问题
转载自:https://onevcat.com/2016/06/ios-10-ats/WWDC 15 提出的 ATS (App Transport Security) 是 Apple 在推进网络通讯安全的一个重要方式。在 iOS 9 和 OS X 10.11 中,默认情况下非 HTTPS 的网络访问是被禁止的。当然,因为这样的推进影响面非常广,作为缓冲,我们可以在 Info.plist 中转载 2016-09-18 14:25:58 · 2168 阅读 · 0 评论 -
iOS6中的Core Image图像过滤技术学习教程
在这个教程中,你将学习最新的Core Image过滤技术。跟着这个教程,你会通过实际动手的经验来学习Core Image技术,亲身体验如何应用一些不同的滤镜来实时地产生各种神奇的效果。Core Image是一个很强大的框架。它可以让你简单地应用各种滤镜来处理图像,比如修改鲜艳程度, 色泽, 或者曝光。 它利用GPU(或者CPU,取决于客户)来非常快速、甚至实时地处理图像数据和视频的帧。转载 2013-02-28 09:15:23 · 885 阅读 · 0 评论 -
NSString的内存分配及管理
本文参考了这篇文章,主要做了补充说明:http://www.cnblogs.com/hellocby/archive/2012/08/23/2652201.html生成一个NSString类型的字符串有三种方法:方法1.直接赋值: NSString *testStr1 = @"a";方法2.类函数初始化生成: NSString *testStr转载 2012-12-21 10:50:55 · 567 阅读 · 0 评论 -
Mac OS、IOS中绘图总结
Paths中的几个重要元素Pointsvoid CGContextMoveToPoint ( CGContextRef c, CGFloat x, CGFloat y);指定一个点成为current pointQuartz会跟踪current point一般执行完一个相关函数后,current point都会相应的改变.Lines相关的几个函数原创 2012-11-17 18:23:34 · 2193 阅读 · 0 评论 -
iOS多线程编程指南(附录)
本附录描述了Mac OS X和iOS上面一些关键的高级线程安全的框架。本附录的信息有可能会发生改变。Cocoa在Cocoa上面使用多线程的指南包括以下这些:不可改变的对象一般是线程安全的。一旦你创建了它们,你可以把这些对象在线程间安全的传递。另一方面,可变对象通常不是线程安全的。为了在多线程应用里面使用可变对象,应用必须适当的同步。关于更多信息,参阅”可变和不可变对比”。许多对转载 2012-11-25 00:24:04 · 676 阅读 · 0 评论 -
CoreAnimation编程指南(七)图层Action
图层的行为在以下情况发生的时候被触发:从图层树里面插入或者删除一个图层,图层的属性值被修改了,或者程序显式要求。通常情况下,行为触发器是动画显示的结果所在。 1.1 行为对象的角色一个行为对象是一个通过CAAction协议响应行为标识符的对象。行为标识符使用标准圆点分隔的关键路径来命名。图层负责把行为标识符映射到特定的行为对象。当一个特定标识符的行为对象被确定的时候,它会发送一个CAA转载 2012-11-25 00:13:23 · 482 阅读 · 0 评论 -
CoreAnimation编程指南(六)动画
动画是当今用户界面的关键因素。当使用核心动画的时候,动画是自动完成的。没有动画的循环和计数器。你的应用程序不负负责重绘,也不负责跟踪动画的当前状态。动画在独立线程里面自动执行,没有和你的应用程序交互。本章提供了对动画类的概览,和介绍如何创建隐式的和显式的动画。 1.1 动画类和时序核心动画提供了一套你可以在你应用程序里面使用的动画类的表现:CABasicAnimation提转载 2012-11-25 00:12:47 · 467 阅读 · 0 评论 -
CoreAnimation编程指南(四)图层树结构
图层不但给自己提供可视化的内容和管理动画,而且充当了其他图层的容器类,构建图层层次结构。本章介绍了图层层次结构,以及如何操纵该图层层次结构。 1.1 什么是图层树的层次结构图层树是核心动画里面类似Cocoa视图的层次结构。比如一个NSView或者UIView的实例拥有父视图(superview)和子视图(subview),一个核心动画的图层拥有父图层(suplayer)和子图层(s转载 2012-11-25 00:11:24 · 575 阅读 · 0 评论 -
CoreAnimation编程指南(三)几何变换
本章介绍图层的几何组成部分,及他们之间的相互关,同时介绍如何变换矩阵可以产生复杂的视觉效果。 1.1 图层的坐标系图层的坐标系在不同平台上面具有差异性。在iOS系统中,默认的坐标系统原点在图层的中心左上角地方,原点向右和向下为正值。在Mac OS X系统中,默认的坐标系原点在图层的中心左下角地方,原点向右和向上为正值。坐标系的所有值都是浮点类型。你在任何平台上面创建的图层都采用该平台默转载 2012-11-25 00:10:43 · 478 阅读 · 0 评论