草庐IT

objective-c - 如何在进入前景时保留 UIScrollView 的框架?

Thisquestion讨论如何在UIScrollView中的View之间创建间隙。商定的方法是增加UIScrollView框架的宽度,以在将滚动过去的View之间创建间隙。但是,当ScrollView是UINavigationController的subview时,就会出现问题。UINavigationController在-viewDidLoad中设置后更改UIScrollView的框架。建议的解决方案是更改-viewDidAppear中的帧大小,此时UINavigationController已完成更改,更改将保持不变。-(void)viewDidAppear:(BOOL)ani

iphone - 存储 cookie 以保留 iPhone 应用程序的凭据

我一直在做一些关于这个主题的研究,我对在iOS应用程序中存储cookie有点困惑。我希望能够存储用户的登录凭据,这样他们就不必在每次启动应用程序时都登录(很像Facebook的应用程序)。我有点迷失了如何做到这一点。以下是我的一些具体问题:当用户登录时,cookie会自动存储吗?如果有,在哪里?如果没有,我该如何存储?我如何检查该cookie并访问它、检查它等?也许是在重新启动应用程序之类的时候。存储带有用户凭据的cookie与将它们存储在钥匙串(keychain)中有何不同?或者它们是同一回事?当用户在应用程序中按下“注销”时,是否应该删除持久性cookie?必须的,对吧?存储这些c

ios - 在请求时使用 NSURLCredentialPersistenceForSession 然后在注销时清除凭据仍然保留凭据

登录时,我在NSURLConnection委托(delegate)方法的didReceiveAuthenticationChallenge中使用NSURLCredentialPersistenceForSession。现在,当我注销并使用此代码清除存储时..NSURLCredentialStorage*credentialStorage=[NSURLCredentialStoragesharedCredentialStorage];NSDictionary*credentialsDicationary=[credentialStorageallCredentials];NSLog(@"

objective-c - 如何将其他 View Controller 推送到 NavigationController 但保留 TabBar?

我有一个以导航Controller根部的基本ViewController开头的应用-(BOOL)application:(UIApplication*)applicationdidFinishLaunchingWithOptions:(NSDictionary*)launchOptions{self.navController.viewControllers=[NSArrayarrayWithObject:[selfgetHomeViewController]];[[selfgetWindow]addSubview:self.navController.view];[[selfgetW

iphone - iOS 从备份还原保留 CoreData 应用程序数据?

如果有人对他们的iPhone进行了完整备份,以备份应用程序等,然后让我们说是一部新的iPhone,他们会从备份中进行恢复。显然这会将应用程序复制到新的iPhone,但它是否也会恢复应用程序数据/核心数据?等等究竟恢复了什么?-核心数据?-NSUserDefaults?-key扣?如果有人能为我解决这个问题,那就太好了。非常感谢,丹 最佳答案 您的所有应用数据(Keychain、NSUserDefaults、CoreData和/Documents)都得到恢复。 关于iphone-iOS从备

ios - 对于通过 scheduledTimerWithTimeInterval 分配的 NSTimer 属性,应该使用什么保留策略?

我正准备将NSTimer属性添加到我的一个类中,以便在必要时/如果需要可以将其取消。我打算将它与+scheduledTimerWithTimeInterval一起使用:我应该使用strong、assign、copy还是unsafe_unretained?(使用ARC)。 最佳答案 为此使用strong。通常,您还希望像这样覆盖setter:-(void)setTimer:(NSTimer*)aTimer{if(aTimer!=_timer){[_timerinvalidate];_timer=aTimer;}}这样,当您更改或清除(

iphone - 如何处理核心数据保留周期

核心数据指南建议您使用逆向关系建模。那里没有问题。有趣的是,如果您加载一个与B有很多关系的对象A并遍历对象图,您最终会遇到一个保留周期并且内存永远不会被释放。对于简单的对象图,您只需在A上调用refreshObject:mergeChanges:来重新创建对象,这样关系就不再是强引用了。如果你有一个复杂的对象图,虽然这很痛苦,因为你需要在你接触的每个对象上调用它。在使用核心数据时,这似乎是一个非常重要的考虑因素,但在Apple的文档中只有一段关于这个主题。我只是想知道其他人是如何处理这个问题的?长时间运行的应用程序会慢慢地消耗越来越多的内存,而无需某种手动过程来强制对象恢复到错误状态。

objective-c - iOS:有什么方法可以检查属性名称是私有(private)名称还是保留名称?

最近我在上传应用程序时遇到了问题,应用程序uploader告诉我我使用了一个名为“contentId”的私有(private)属性,它是CoreData托管对象中的一个私有(private)属性,我所做的是创建一个具有'contentId'属性并使我的核心数据托管对象子类之一实现该协议(protocol),并在'contentId'的getter中返回其对象ID,我不知道我是否直接在托管对象子类中使用'contentId',是否或者它当时没有警告我,但我想知道有没有办法确保我的类不使用私有(private)属性,然后再尝试上传并让应用程序上传者告诉我,因为有时无法在最后一步。谢谢!

ios - 在方法 objective-c 之外保留数组数据

我有一个数组,players,里面有两个字符串:player1和player2。这是我的.h文件:#import@interfacehardOne:UIViewController{UISwitch*hard1ON;NSMutableArray*players;NSString*player1,*player2;}@property(nonatomic,retain)IBOutletUISwitch*hard1ON;@property(nonatomic)BOOLswitchState;@property(nonatomic,retain)NSMutableArray*players;

ios - ARC block ,弱和保留计数

我以为我已经很了解弱引用和block,但是在尝试下面的代码片段时,有一些我不明白的地方。方法测试1:一切正常,对象不保留方法测试2:我不明白为什么对象似乎一直保留到方法结束测试3!甚至明确设置object=nil在方法结束时测试2不会改变任何东西。方法测试3:对象没有保留。为什么是方法测试2不是这样吗?作为一个附带问题,我实际上想知道弱变量是否是线程安全的?即,如果我在尝试从不同线程访问弱变量时永远不会得到任何BAD_ACCESS异常。@interfaceObject:NSObject@property(nonatomic)NSIntegerindex;@end@implementat