草庐IT

iphone - 使用 UIImage 的大型 NSArray 时出现内存问题

我正在尝试使用一组UIImages在屏幕上显示大量图像。目前,我将每张图片添加到NSMutableArray中,然后在需要时访问它们,但随着图片数量的增加,应用程序最终会崩溃。我尝试使用Instruments来计算内存分配,但似乎一旦内存达到20MB左右,应用程序就会崩溃。有办法解决这个问题吗?或者在我这样做的时候有什么方法可以尽可能地节省内存?即使您对此没有答案,有没有人遇到过类似的问题?如果是这样,您是如何妥协/解决的?顺便说一句,我没有想到存储到文件(或核心数据)和从文件(或核心数据)中检索选项,因为该应用程序需要快速使用图像,而且我的印象是写入/读取核心数据或文件在iOS上比使

iphone - 调用 'allObjects' 时对象的 NSSet 中的 NSArray 崩溃

我有一个对象的核心数据NSSet,通过我试图放入数组的关系。当我调用“allObjects”选择器时,我在NSSet中的对象上发生崩溃,因为该选择器不存在。好吧,它显然不是,但我如何让我的数据复制到数组中?这是崩溃的代码。NSArray*items=[surveyCategory.surveyQuestionsallObjects];在我的surveyQuestionsNSSet中是SurveyQuestion对象。这会引发错误`[SurveyQuestionallObjects]:unrecognizedselectorsenttoinstance关于如何解决这个问题有什么想法吗?谢

ios - 将多个 NSArrays 添加到 NSMutableDictionary,并按数组顺序匹配相应的项目

我有两个数组,分别是itemName和itemImagesNSArray*itemName=@[@"Blog",@"Missions",@"Subscriptions",@"Questions",@"Aide",@"Disconnect"];NSArray*itemImages=@[@"ico-1",@"ico-2",@"ico-3",@"ico-4",@"ico-5",@"ico-6"];我需要将它们添加到字典中NSMutableDictionary*menuItemNameImage=[[NSMutableDictionaryalloc]init];[menuItemNameIma

ios - 使用值的 NSArray 有效地创建占位符模板 NSString

我正在尝试为FMDB创建一个实用方法,它将采用一个NSArray值并返回一个占位符字符串,以根据数组中值的数量在IN语句中使用。我想不出创建这个字符串的优雅方法,我是否缺少一些NSString实用方法://Thecontentsoftheinputaren'timportant.NSArray*input=@[@(55),@(33),@(12)];//Seemsclumsywaytodothings:NSIntegersize=[inputcount];NSMutableArray*placeholderArray=[[NSMutableArrayalloc]initWithCapac

ios - 不同 NSArray 对象的组合

我想在不同的数组中找到元素的组合。假设我有三个NSArray对象:NSArray*set1=[NSArrayarrayWithObjects:@"A",@"B",@"C",nil];NSArray*set2=[NSArrayarrayWithObjects:@"a",@"b",nil];NSArray*set3=[NSArrayarrayWithObjects:@"1",nil];现在所需的答案是跟随数组NSArray*combinations=[{A},{B},{C},{a},{b},{1},{A,a},{A,b},{A,1},{B,a},{B,b},{B,1},{a,1},{b,1

ios - 使用 NSPredicate 过滤包含具有 NSDate 字段的对象的 NSArray

我有一个对象数组,每个对象都包含一个名为日期的字段。我想使用NSPredicate创建这个数组的一个子集,我只提取那些在特定日期范围内的对象。这是我正在使用的代码:predicate=[NSPredicatepredicateWithFormat:@"(date>=%@)AND(date=我遇到的问题是startDate和endDate是同一天,但时间不同。这是XCode调试器中的变量View如您所见,我在数组中有一个对象,它的date字段等于startDate,但您也可以看到_daysArray执行过滤器后不包含任何元素。当日期不是同一天时,这可以正常工作。如有任何帮助,我们将不胜感

ios - Objective-C : loop efficiently through particular range of elements within NSArray

我想快速循环遍历NSArray的一部分,例如从包含1000个对象的数组中的位置700到950。我认为在这里使用[arrayobjectAtIndex:index]不是一个好方法,因为它比使用for(Object*objinarray)的快速迭代要慢在这种情况下最好的方法是什么?我正在考虑使用for(Object*objin[arraysubarrayWithRange]])但不确定开销是多少,因为将为此创建一个子数组。还有其他好的选择吗? 最佳答案 您可以使用enumerateObjectsAtIndexes:在NSIndexSet

ios - 分配给 'NSArray' 到 'NSString' 的不兼容指针类型

RecipeBookViewController.m文件在Xcode中显示警告“分配给‘NSArray’到‘NSString’的指针类型不兼容谁能修复这个警告。我正在从教程Tutorial#14的appcoda网站开发RecipeBook应用程序这是我的Recipe.h文件#import@interfaceRecipe:NSObject@property(strong,nonatomic)NSString*name;@property(strong,nonatomic)NSString*prepTime;@property(strong,nonatomic)NSString*image

iphone - NSArray 生命周期

我在.h文件中创建了一个NSArray对象:NSArray*tempArray;然后我在.m文件中使用viewDidLoad()方法分配它:tempArray=[[NSArrayalloc]init];//initilaizetempArray=[connectconnectSeriesJSonBack];//fillit(Itryitworks)但我想在另一种方法中使用这个数组,例如:-(void)scrollViewDidEndDecelerating:(UIScrollView*)_scrollView我如何组织数组生命周期,因为我使用alloc、retain等,无法再次访问数组

iphone - 将 NSArray 作为 otherButtonTitles 传递 - iOS

目前我正在使用...otherButtonTitles:@"HotelLaguna",@"HotelVillage",@"HotelTorre",@"HotelBaia",nil];创建一个UIActionSheet。我想传递一个NSArray...像这样:NSArray*names=[[NSArrayalloc]initWithObjects:@"HotelLaguna",@"HotelVillage",@"HotelTorre",@"HotelBaia",nil];...otherButtonTitles:names];这在某种程度上是可能的吗?谢谢!