标签: nsarray

使用特殊字符对数组进行排序 - iPhone

我有一个带有法语字符串的数组,让我们说:"égrener"和"确切"我想对它进行排序,例如égrener是第一个.当我做:

NSSortDescriptor *descriptor = [[NSSortDescriptor alloc] initWithKey:@"name" ascending:YES];
NSArray *sortDescriptors = [NSArray arrayWithObject:descriptor];
NSArray *sortedArray = [myArray sortedArrayUsingDescriptors:sortDescriptors];
Run Code Online (Sandbox Code Playgroud)

我在列表的末尾得到了é......我该怎么办?

谢谢

sorting iphone objective-c nsarray

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

从自定义类填充数组的最简单方法?

假设您有一个Person类(名称,年龄等),以及一个名为PeopleArray的数组,其中包含多个Person.

提取每个Person的名称(例如)并将其放入数组的最简单方法是什么.Psuedocode是:

nameArray = every Person's name, from the array PeopleArray
Run Code Online (Sandbox Code Playgroud)

objective-c nsarray

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

NSArray导致EXC_BAD_ACCESS

我在使用NSArray填充UITableView时遇到问题.我确定我做的事情很糟糕,但我无法理解.当我尝试做一个简单的计数时,我得到了EXC_BAD_ACCESS,我知道这是因为我试图从一个不存在的内存位置读取.

我的.h文件有这个:

@interface AnalysisViewController : UITableViewController 
{
StatsData *statsData;
NSArray *SectionCellLabels;
}
Run Code Online (Sandbox Code Playgroud)

我的.m有这个:

- (void)viewWillAppear:(BOOL)animated
{
[super viewWillAppear:animated];
NSLog(@"AnalysisViewController:viewWillAppear");

// Step 1 - Create the labels array
SectionCellLabels = [NSArray arrayWithObjects:@"analysis 1",
                     @"analysis 2",
                     @"analysis 3", nil];
}


- (UITableViewCell *)tableView:(UITableView *)tableView
     cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
NSLog(@"AnalysisViewController:cellForRowAtIndexPath");

// Check for reusable cell first, use that if it exists
UITableViewCell *cell = [tableView    
              dequeueReusableCellWithIdentifier:@"UITableViewCell"];

// If there is no reusable cell of this type, create a new one
if (!cell) {
    cell …
Run Code Online (Sandbox Code Playgroud)

iphone uitableview nsarray

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

数组中词典的数量总和

我有一个包含NSDictionary列表的NSArray.喜欢:

NSArray *array = ...;
NSDictionary *item = [array objectAtIndex:0];
NSLog (@"quantity: %@", [item objectForKey: @"quantity"]);
Run Code Online (Sandbox Code Playgroud)

如何汇总阵列所有字典中包含的所有数量?

objective-c sum-of-digits nsarray

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

按月将NSArray与NSDate对象分类到NSDictionary中

我正在构建一个UITableView并希望按月分组,以便我可以将这些字符串作为我的节标题,例如:

February 2013
- Item 1
- Item 2

January 2013
- Item 1
- Item 2
Run Code Online (Sandbox Code Playgroud)

我有一个NSArray自定义对象,其pubDate属性是一个NSDate.

如何使用该NSDate对象将我的自定义对象NSDictionary按月分组?

cocoa-touch objective-c nsdictionary nsarray ios

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

如何从NSArray输出中删除新行

我正在尝试从NSArray输出中删除新的行返回.我首先将它转换为NSString以删除()但新行仍然显示

NSString *myArrayString = [self.selectedStates description];

NSCharacterSet *charsToTrim = [NSCharacterSet characterSetWithCharactersInString:@"()\n\""];
myArrayString = [myArrayString stringByTrimmingCharactersInSet:charsToTrim];
Run Code Online (Sandbox Code Playgroud)

输出我看起来如下.我需要以某种方式删除新行,所以不是这样:

   1,
2,
3,
4,
5,
6
Run Code Online (Sandbox Code Playgroud)

我会 1,2,4,5,6

objective-c nsarray ios

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

Xcode自动完成为NSArray getter提供了神秘的"songsAtIndexes"

我的课堂上有一个名为"歌曲"的NSArray类型的属性.我正在为它创建一个自定义getter,XCode为我提供了创建方法的选项:

songsAtIndexes:(NSIndexSet *)indexes
Run Code Online (Sandbox Code Playgroud)

这是什么以及为什么XCode提供这个?这是特定于NSArray属性?为此方法创建方法/ getter的目的是什么?如果我不手动定义它,它会自动创建/合成吗?

xcode autocomplete objective-c nsarray ios

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

如何访问NSArray中的奇数和偶数对象

我有一个NSArray,我想访问NSArray上的奇数和偶数对象,因为它们彼此保持不同的值.

有效地说,这就是我现在所做的一切

- (void)splitArray:(NSArray)array {
   for (id object in array) { // this itterates my array
      // do stuff in here
   }
}
Run Code Online (Sandbox Code Playgroud)

我需要弄清楚如何捕捉偶数或奇数的物体......我在想类似的东西

- (void)splitArray:(NSArray)array {
   int i = 1;
   for (id object in array) { // this itterates my array
      if (i == even) {
        // do stuff here
      }
      else if (i == odd) {
       // do stuff here
      }
     i++
   }
}
Run Code Online (Sandbox Code Playgroud)

它只是我不知道在之间使用什么 if ()

任何帮助将不胜感激

objective-c nsarray

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

如何从NSDictionary对象数组中找到最大值?

如何找到最大的价值NSArray的NSDictionary?

这是我的代码,

NSDictionary *d1 = [NSDictionary dictionaryWithObject:[NSNumber numberWithInt:35] forKey:@"data"];
NSDictionary *d2 = [NSDictionary dictionaryWithObject:[NSNumber numberWithInt:52] forKey:@"data"];

NSArray *array = [NSArray arrayWithObjects:d1, d2, nil];
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SELF.data == %@.@max.data", array];
Run Code Online (Sandbox Code Playgroud)

然而,这有时会产生错误的结果 我错过了什么吗?

objective-c nsarray ios

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

enumerateObjectsUsingBlock - 在Swift中转换参数

我想引用具有特定类型的枚举对象,而不仅仅是泛型AnyObject!,但在文档中找不到有关它的任何信息.

enumerateObjectsUsingBlockSwift中的签名是:

func enumerateObjectsUsingBlock(_ block: ((AnyObject!,
                                         Int,
                                         UnsafePointer<ObjCBool>) -> Void)!)
Run Code Online (Sandbox Code Playgroud)

在目标C中:

- (void)enumerateObjectsUsingBlock:(void (^)(id obj,
                                     NSUInteger idx,
                                     BOOL *stop))block
Run Code Online (Sandbox Code Playgroud)

如果我想将迭代的对象视为特定类型,则在Objective CI中只需动态调整签名,例如:

[array enumerateObjectsUsingBlock:^(NSString *s, NSUInteger idx, BOOL *stop){
    // ...some function of s as NSString, not just id... 
}];
Run Code Online (Sandbox Code Playgroud)

如何在Swift中获得此行为?

nsarray ios swift

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