Tag: objective c

接收方types***例如消息是前向声明

在我的iOS5应用程序,我有NSObject States类,并试图启动它: states = [states init]; 这里是国家的init方法: – (id) init { if ((self = [super init])) { pickedGlasses = 0; } return self; } 但是在行states = [states init];有错误states = [states init]; 接收方types“States”例如消息是一个前向声明 这是什么意思? 我究竟做错了什么?

在一个UITableViewCell上隐藏分隔线

我正在自定义一个UITableView 。 我想隐藏最后一个单元格的分隔线…我可以这样做吗? 我知道我可以做tableView.separatorStyle = UITableViewCellStyle.None但会影响所有 tableView的单元格。 我希望它只影响我的最后一个单元格。

Objective-C中的NULL和nil

在observeValueForKeyPath:ofObject:change:context: – 为什么在没有指定上下文指针时,文档使用NULL而不是nil ?

在Objective-C中将NSArray转换为NSString

我想知道如何将NSArray [@"Apple", @"Pear ", 323, @"Orange"]转换为Objective-C中的string。

为什么Objective C文件使用.m扩展名?

自从我开始学习Objective C和Cocoa之后,我一直在想,为什么他们select了扩展名为.m的实现文件 – 它应该是什么意思,还是只是一个随机的字母? 有人知道吗? 我无法在Google上的任何位置find此类信息…

删除应用程序时删除钥匙串项目

我正在使用idandersen的scifihifi-iphone代码来使用钥匙串和保存密码 [SFHFKeychainUtils storeUsername:@"User" andPassword:@"123" forServiceName:@"TestService" updateExisting:YES error:&error]; 当我从设备上删除应用程序时,密码仍保留在钥匙串中。 当用户从设备上删除应用程序时,我想从钥匙串中删除密码。 我怎样才能做到这一点?

setNeedsLayout vs setNeedsUpdateConstraints和layoutIfNeeded vs updateConstraintsIfNeeded

我知道自动布局链基本上由3个不同的过程组成。 更新约束 布局视图(这里是我们得到帧的计算) 显示 什么是不完全清楚的是-setNeedsLayout和-setNeedsUpdateConstraints之间的内在区别。 来自Apple Docs: setNeedsLayout 当您想要调整视图子视图的布局时,在应用程序的主线程上调用此方法。 此方法logging请求并立即返回。 由于此方法不会强制立即更新,而是等待下一个更新周期,因此您可以在更新任何视图之前使用它来使多个视图的布局无效。 此行为允许您将所有布局更新合并到一个更新周期,这通常对性能更好。 setNeedsUpdateConstraints 当自定义视图的属性以影响约束的方式进行更改时,可以调用此方法来指示约束需要在将来的某个时间点更新。 然后系统将调用updateConstraints作为其正常布局阶段的一部分。 在需要之前立即更新约束可确保在布局阶段之间对视图进行多个更改时,不会不必要地重新计算约束。 当我想在修改一个约束之后为视图添加animation,并为我通常调用的变化设置animation效果时: [UIView animateWithDuration:1.0f delay:0.0f usingSpringWithDamping:0.5f initialSpringVelocity:1 options:UIViewAnimationOptionCurveEaseInOut animations:^{ [self.modifConstrView setNeedsUpdateConstraints]; [self.modifConstrView layoutIfNeeded]; } completion:NULL]; 我发现,如果我使用-setNeedsLayout而不是-setNeedsUpdateConstraints一切都按预期工作,但如果我更改-layoutIfNeeded和-layoutIfNeeded ,animation将不会发生。 我试图做出自己的结论: -updateConstraintsIfNeeded仅更新约束,但不强制布局进入该过程,因此原始帧仍然保留 -setNeedsLayout也调用-setNeedsLayout方法 那么什么时候可以使用一个而不是另一个呢? 关于布局方法,我是否需要在约束或父视图中有更改的视图上调用它们?

如何更改UIButton突出显示的背景颜色?

在我的应用程序的某个时候,我有一个突出显示的UIButton (例如,当用户的手指在button上),我需要改变背景颜色,而button突出显示(所以当用户的手指仍然在button)。 我尝试了以下内容: _button.backgroundColor = [UIColor redColor]; 但它不工作。 颜色保持不变。 当button没有突出显示时,我尝试了相同的一段代码,它工作正常。 改变颜色后,我也尝试调用-setNeedsDisplay ,但没有任何效果。 如何强制button来改变背景颜色?

在Objective-C中,Java的“instanceof”关键字是什么?

我想检查一个对象(如someObject )是否可赋值(可转换)为另一种types的variables(例如SpecifiedType )。 在Java中,我可以写: someObject instanceof SpecifiedType 一个相关的问题是查找一个对象的运行时types是否等于另一个types。 在Java中,我可以写: someObject.getClass().equals(SpecifiedType.class) Objective-C如何做到这一点?

NSUserDefaults – 如何判断一个密钥是否存在

我正在研究一个小型的iPhone应用程序,并且使用NSUserDefaults作为我的数据持久性。 它只需要跟踪一些东西,比如一些名字和一些数字,所以我想我可以保持简单。 我发现这个网页有一些参考,但我不认为它可以回答我的问题。 基本上,我希望能够检查一个值(或一个键)是否已经存在于NSUserDefaults,然后做相应的事情。 一些例子:应用程序启动,如果这是第一次启动它输出一个警告说欢迎。 要知道这是否是第一次打开它读取UserDefaults并检查。 例2:它说,“你好[名字]”,其中名称是你input的东西。 如果你已经打开了应用程序,并没有名字,应该说“Hello World”。 我需要检查你是否已经input一个名称,并采取相应的行动。 该名称将被存储在NSUserDefaults中。 一些帮助在这里? 我真的很感激它!