Tag: objective c

iOS Prefix.pch最佳做法

我见过许多开发人员将各种便利的macros添加到他们的iOS项目的Prefix.pch中。 什么(或不),你build议添加到iOS Prefix.pch文件? 你的Prefix.pch是什么样的?

iPhone SDK与isKindOfClass和isMemberOfClass之间的区别

任何人可以告诉我isKindOfClass:(Class)aClass和isMemberOfClass:(Class)aClass函数之间的区别是什么? 我知道这是一个小的喜欢,一个是全球性的,而另一个是确切的类比赛,但我需要有人指定哪个是请。

CFNetwork和Bonjour集成iPhone到Mac的集成

我想联合使用CFNetwork和Bonjour,以便能够在我的iPhone应用程序和Mac应用程序之间进行通信。 iPhone上的应用程序将有一个button。 然后在Mac应用程序中会有一个标签。 如果button在iPhone应用程序上被按下,则标签会在Mac应用程序中更改。 有没有可以做到这一点的示例代码? 如果不是,有人能带领我走向正确的方向吗? 谢谢!

使用-performSelector:只是调用方法

对于Objective-C,我还是一个新手,我想知道以下两个语句有什么区别? [object performSelector:@selector(doSomething)]; [object doSomething];

当从后台打开应用程序时,不会调用ViewDidAppear

我有一个视图控制器,其中我的价值是0(标签),当我从另一个ViewController打开该视图控制器我已经设置viewDidAppear设置值20标签。 它工作正常,但是当我closures我的应用程序,并再次打开我的应用程序,但值不会改变,因为viewDidLoad , viewDidAppear和viewWillAppear没有被调用。 打开我的应用程序时我怎么打电话 我必须从applicationDidBecomeActive做些什么吗?

如何确定是否NSDate是今天?

如何检查一个NSDate属于今天? 我曾经使用[aDate description]前10个字符来检查它。 [[aDate description] substringToIndex:10]返回"YYYY-MM-DD"这样的string,所以我把string与[[[NSDate date] description] substringToIndex:10]返回的string进行了比较。 有更快和/或更简洁的方法来检查? 谢谢。

NSOperation和NSOperationQueue工作线程vs主线程

我必须在我的应用程序中执行一系列下载和数据库写入操作。 我正在使用NSOperation和NSOperationQueue相同。 这是应用场景: 从一个地方获取所有邮编。 为每个邮政编码提取所有房屋。 为每个房子获取居民的细节 如上所述,我已经为每个任务定义了一个NSOperation 。 在第一种情况下(Task1),我发送一个请求到服务器来获取所有的邮编。 NSOperation内的NSOperation将收到数据。 这些数据被写入数据库。 数据库操作是在不同的类中定义的。 从NSOperation类我正在调用数据库类中定义的写函数。 我的问题是数据库写操作是在主线程还是在后台线程中发生? 当我在一个NSOperation调用它时,我期待它在NSOperation中运行在不同的线程(Not MainThread)中。 有人可以在处理NSOperation和NSOperationQueue时解释这种情况。

UITableViewCell显示白色背景,不能在iOS7上修改

我已经实现了从UITableViewCellinheritance的自定义表格视图单元类。 tableview包含一个背景图像,所以我想单元格的背景是透明的。 在iOS7之前,它看起来很棒。 但是,在iOS7中,单元总是以白色背景显示。 即使是2015年的Xcode7, 故事板中也有一个错误 :你必须在代码中设置单元格的背景颜色。

CALayer有透明的孔洞

我有一个简单的视图(图片的左侧),我需要创build某种叠加(图片的右侧)到这个视图。 这个覆盖层应该有一些不透明的,所以下面的视图仍然是部分可见的。 最重要的是,这个覆盖层的中间应该有一个圆孔,所以它不会覆盖视图的中心(见下图)。 我可以很容易地创build一个这样的圈子: int radius = 20; //whatever CAShapeLayer *circle = [CAShapeLayer layer]; circle.path = [UIBezierPath bezierPathWithRoundedRect:CGRectMake(0, 0,radius,radius) cornerRadius:radius].CGPath; circle.position = CGPointMake(CGRectGetMidX(view.frame)-radius, CGRectGetMidY(view.frame)-radius); circle.fillColor = [UIColor clearColor].CGColor; 而像这样的“完整”矩形覆盖: CAShapeLayer *shadow = [CAShapeLayer layer]; shadow.path = [UIBezierPath bezierPathWithRoundedRect:CGRectMake(0, 0, view.bounds.size.width, view.bounds.size.height) cornerRadius:0].CGPath; shadow.position = CGPointMake(0, 0); shadow.fillColor = [UIColor grayColor].CGColor; shadow.lineWidth = 0; shadow.opacity = […]

NSURLConnection sendAsynchronousRequest:queue:completionHandler:在一行中发出多个请求?

我一直在使用NSURLConnection's sendAsynchronousRequest:queue:completionHandler:方法非常棒。 但是,我现在需要连续发出多个请求。 我仍然在使用这个很好的asynchronous方法的时候怎么能这样做呢?