小编Mar*_*rra的帖子

正确地将NSString转换为NSnumber

我无法弄清楚为什么它不起作用,我有一个NSString,我需要转换为NSNumber(将其保存到核心数据),例如

NSLog(stringNum); 
Run Code Online (Sandbox Code Playgroud)

返回1

NSNumberFormatter * f = [[NSNumberFormatter alloc] init];
[f setNumberStyle:NSNumberFormatterDecimalStyle];
NSNumber *myNumber = [f numberFromString:stringNum];
[f release];

NSLog(@"myNumber = %i", myNumber); 
Run Code Online (Sandbox Code Playgroud)

返回120882496或类似的内容

我错过了什么?感谢帮助

iphone objective-c nsnumber nsstring

3
推荐指数
1
解决办法
7292
查看次数

dispatch_queue和核心数据

我知道这NSManagedObjectContext不是线程安全的,但我想在后台执行我的提取和更新.所以我对是否可以这样做有疑问.

我有一个访问核心数据的单例,所以我想创建一个串行dispatch_queue_t可以串行执行所有请求.这是可以的,因为我不确定是否所有请求都将在同一个线程中执行,但由于它是串行的,因此不会有任何并发​​操作.

multithreading core-data grand-central-dispatch

3
推荐指数
1
解决办法
293
查看次数

TRUEPREDICATE如何与[NSPredicate predicateWithValue:YES]不同?

我正在使用[fetchRequest setPredicate:[NSPredicate predicateWithValue:YES]]; 通过传递通用真谓词调试我的代码.当我清除lldb命令po [NSPredicate predicateWithValue:YES]时,它会打印TRUEPREDICATE.

predicateWithValue:的返回类型是NSPredicate.

当我把它改成[fetchRequest setPredicate:TRUEPREDICATE]; Xcode抱怨语法错误"使用未声明的标识符"

我的问题是我是否应该导入任何头文件以删除错误?如果没有,那么TRUEPREDICATE与[NSPredicate predicateWithValue:YES]的区别.

core-data

3
推荐指数
1
解决办法
1386
查看次数

未调用地址簿回调

我有一个iPhone应用程序,它使用AddressBook.framework并使用Core Data来存储这些联系人.为了确保在更新地址簿时更新我自己的数据库(无论是通过MobileMe还是在我自己的应用程序中进行编辑),我正在订阅有关通讯簿何时更新的通知.我在启动时调用它:

ABAddressBookRef book = ABAddressBookCreate();
ABAddressBookRegisterExternalChangeCallback(book, addressBookChanged, self);
Run Code Online (Sandbox Code Playgroud)

哪个(据说)在任何编辑时调用它.我有一个允许编辑的ABPersonViewController,而且似乎永远不会调用addressBookChanged.

void addressBookChanged(ABAddressBookRef reference, CFDictionaryRef dictionary, void *context) {
    // The contacts controller we need to call
    ContactsController *contacts = (ContactsController *)context;

    // Sync with the Address Book
    [contacts synchronizeWithAddressBook:reference];
}
Run Code Online (Sandbox Code Playgroud)

它有什么理由不被称为?

iphone objective-c addressbook

2
推荐指数
1
解决办法
2342
查看次数

iOS:从Web下载非常大的数据的策略

我在iOS的内存管理挣扎在下载从web相对较大的文件(如用350MB大小的视频).这里的目标是下载这些类型的文件并将其存储在二进制数据字段的CoreData上.

目前我正在使用NSURLSession.dataTaskWithUrlNSURLSession.dataTaskWithRequest检索这些文件的方法,但看起来这些方法不会处理内存使用等问题,只是在内存达到最大使用量时继续填充内存,当我达到380MB~时,会给我留下内存警告.

初始内存使用情况

记忆警告

在没有达到内存警告的情况下,从Web执行此类大型数据检索的最佳策略是什么?AlamoFire和其他库是否可以解决这个问题?

memory ios nsurlsession swift

2
推荐指数
1
解决办法
1027
查看次数