标签: nsarray

NSString componentsSeparatedByString的错误?

我一直在尝试将字符串的部分读入数组并遇到一些问题.虽然我的任务更复杂,但即使是一个简单的示例情况也会产生同样的问题:代码编译并运行但是字符串数组的大小始终是1,而字符串[0]中包含的唯一内容是" __NSArrayM".

NSString *string = @"John, Bob, Jane";
NSArray *strings = [string componentsSeparatedByString: @", "];
Run Code Online (Sandbox Code Playgroud)

提前感谢任何想法!

objective-c nsstring nsarray

0
推荐指数
1
解决办法
738
查看次数

目标c,nsstring到nsarray

我是目标C的新手,所以我需要一些帮助,有没有快速的方法来转换这个字符串: {{2, 2}, {103, 166}}到一个NSArray,或者只是将值变为四个NSInteger

objective-c nsstring nsarray

0
推荐指数
1
解决办法
387
查看次数

XCode 4无法编译非常大的数组,以及有关NSArray/NSString开销的问题

我是Objective C和XCode的新手,目前正在开发我的第一款iPhone游戏.游戏必须对超过250,000个单词的拼字游戏字典做一些非常快速的拼写检查,理想情况下足够快,我可以在单个帧中检查100个字符串对单词列表.

我之前在C和actionscript 2中写过这个没有问题,只是使用标准的二进制搜索,但我不确定在Objective C中使用NSString和NSArray等选项实现它的最佳方法.

目前最大的问题是根本不会编译.如果我创建一个填充了NSStrings的NSArray,XCode只会挂起但不会崩溃.我把它编译了大约30分钟没有结果.我正在使用的代码:

words=[NSArray arrayWithObjects:@"aa", @"aah", ...250,000 words... @"zyzzyvas" ,nil];  
Run Code Online (Sandbox Code Playgroud)

当wordlist减少到几百个单词时,它编译并正常工作.

任何人都可以解释为什么会失败,或建议一个更好的方法来解决它?

接下来我要尝试的是将wordlist分成许多小块; 以第一个字母分隔,也许还有字母数,但这意味着要重新格式化大量文本文件以进行反复试验,这很可能会碰到同一个墙.

这个问题的另一部分是关于NSArray的速度和NSString的开销的一般查询,与旧式的char指针数组C风格相比.如果NSStrings甚至包含一些额外字节的头或函数指针或其他什么,在iPhone应用程序中制作25万个可能是错误的做法,对吧?

任何建议都将非常感谢.

objective-c nsarray ios xcode4

0
推荐指数
1
解决办法
982
查看次数

for(目录中的NSArray*a)无法正常工作

将plist加载到NSArray后,我试图访问其嵌套数组.

NSArray *tree = [[NSArray alloc] initWithContentsOfFile:path];
for (NSArray *a in tree)
{
    //Let's assume object at index 0 is always NSString
    NSLog(@"Returning the string: %@ ", [a objectAtIndex:0]);
}
Run Code Online (Sandbox Code Playgroud)

调试器中的一些值:

   tree __NSCFArray *   0x6856cf0
   0    __NSCFString *  0x6818b70
   1    __NSCFString *  0x682be10
   2    __NSCFArray *   0x6856cd0
Run Code Online (Sandbox Code Playgroud)

所以我期待for语句跳过前两个NSStrings然后用NSArray执行.

然而步进一行:__ NSCFString*0x6818b70

繁荣,appcrash.

提示?

foreach cocoa objective-c nsarray

0
推荐指数
2
解决办法
176
查看次数

在IOS中将NSArray转换为NSstring

我有一个名为delegate.allSelectedVerseEnglish的NSMutableArray来自应用程序委托,它有一些值,我能够获得数组计数,我可以在UITableView中正确显示它.但现在我想在textview中显示它.我的UITableView代码是这样的

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
    return 1;
}


// Customize the number of rows in the table view.
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {

        return [delegate.allSelectedVerseEnglish count];
}


- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {

    static NSString *CellIdentifier = @"Cell";
    readCell *cell = (readCell *)[tableView dequeueReusableCellWithIdentifier:CellIdentifier];

    if (cell == nil) {
        cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier] autorelease];
        NSArray *nib = [[NSBundle mainBundle] loadNibNamed:@"readCell" owner:self options:nil]; 
        cell = [nib objectAtIndex:0]; 

        cell.label.text = [NSString stringWithFormat:@"%d",indexPath.row+1];
        cell.textLabel.text =  [NSString stringWithFormat:@"  %@",[delegate.allSelectedVerseEnglish objectAtIndex:indexPath.row]];
        cell.textLabel.font …
Run Code Online (Sandbox Code Playgroud)

iphone nsstring nsarray ios

0
推荐指数
1
解决办法
2098
查看次数

将BOOL属性与整个NSArray相关联的最简洁方法

我有几个NSArray,它们包含相互关联的UIView对象集合(NSArrays是soundView0,soundView1,soundView2和soundView3).我希望能够将BOOL属性与将在数组中启用/解释UIViews的整个数组相关联.

什么是最干净/最恰当的方法来完成这个?

objective-c nsarray kvc

0
推荐指数
1
解决办法
464
查看次数

如何在iOS中对已签名的数字进行排序?

这可能是一个简单的问题,但我不知道对有符号整数值数组进行排序的方法.

我的数组在排序之前,

pointsAry (-2,-7,-5,0,-3,2,-1,-4,1,3,-6)
Run Code Online (Sandbox Code Playgroud)

使用后

NSArray * sortedArray = [pointsAry sortedArrayUsingComparator:^(id str1, id str2){
        return [(NSString *)str1 compare:(NSString *)str2 options:NSNumericSearch];
    }];
Run Code Online (Sandbox Code Playgroud)

结果

sortedArray : (-1,-2,-3,-4,-5,-6,-7,0,1,2,3)
Run Code Online (Sandbox Code Playgroud)

对于有符号值,sortedArray格式不正确,所以我需要

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

如何按上述格式排序?提前致谢.

sorting iphone objective-c nsarray ios

0
推荐指数
1
解决办法
600
查看次数

UITableView cellForRowAtIndexPath被提前调用

我有一个UITableView在第一次调用时加载其数组项目.但是,当我刷新tableview时它会崩溃,因为委托方法cellForRowAtIndexPath被提前调用.我有一个整数,表示我的主数据数组的索引,并在我的刷新按钮中重置为0.然而它崩溃是因为它试图在重置之前重新加载数据.我通常会使用indexPath.row作为我的索引,但是数组很复杂,而indexPath.row与我想要为每个单元格显示的内容不匹配.下面是一些代码,任何帮助表示赞赏.

当我下拉刷新AND viewDidLoad以准备数据时,会调用此方法

- (IBAction)refresh:(id)sender {
itemIndexer = 0;
[sender beginRefreshing];
[self loadData];
}
Run Code Online (Sandbox Code Playgroud)

我的loadData方法的一部分

-(void) loadData {
dispatch_queue_t backgroundQueue = dispatch_queue_create("com.Foo.myqueue", 0);
dispatch_queue_t mainQueue = dispatch_get_main_queue();

dispatch_async(backgroundQueue, ^{

   [self downloadData];

    dispatch_async(mainQueue, ^{
            [self.tableView reloadData];
            [_rcRefresh endRefreshing];
    });
});
Run Code Online (Sandbox Code Playgroud)

在viewDidLoad中我调用最初加载tableview:

[self refresh:_rcRefresh];
Run Code Online (Sandbox Code Playgroud)

我得到一个超出数组错误范围的索引.我使用断点来确定原因,原因很简单,因为刷新没有被调用,否则itemIndexer将被设置为0.而不是它的数字大于数组1.如果它真的有必要我可以发布cellForRowAtIndexPath但是我不确定你是否需要它,如果它在第一次调用时工作.因此,总结对tableview的第一次调用是有效的,并且数据加载正常,但刷新会导致索引超出数组的边界,就像从不调用refresh:一样.

objective-c uitableview nsarray ios

0
推荐指数
1
解决办法
1854
查看次数

将NSDictionary的NSArray转换为字典值的NSArray

是否有直接的方法将包含NSDictionary的NSArray转换为包含字典值的NSArray?

我有这样一个数组:

a = [ { name = "A"},{ name = "B"}, {name = "C" } ]

我想要这个:

a = [ "A", "B", "C" ]

我只能考虑迭代前一个数组,并将每个字段添加到新的可变字段中,以确保相同的顺序.我想知道是否有更高级别的操作或语法糖来做到这一点.

谢谢.

objective-c nsarray

0
推荐指数
1
解决办法
1430
查看次数

NSArray和"If-statement"

我是开发应用程序的新手.我有一张NSArray,里面有2张图片.

imageOneArray = [NSArray arrayWithObjects:[UIImage imageNamed:@"White.png"], [UIImage imageNamed:@"Black.png"], nil];
Run Code Online (Sandbox Code Playgroud)

我的问题是,有没有办法制作一个看起来像这样的"if语句":

if ([imageOneArray = [UIImage imageNamed:@"White.png"]) {
    //DO SOMETHING
};
Run Code Online (Sandbox Code Playgroud)

上面的代码给了我错误,我该如何解决?我究竟做错了什么?我的作品是什么?

任何帮助将不胜感激.

objective-c nsarray ios

0
推荐指数
1
解决办法
235
查看次数

标签 统计

nsarray ×10

objective-c ×9

ios ×5

nsstring ×3

iphone ×2

cocoa ×1

foreach ×1

kvc ×1

sorting ×1

uitableview ×1

xcode4 ×1