标签: nsarray

释放NSMutableArray对象

这是我的'tick'功能:

- (void) tick: (ccTime) dt
{

 NSLog(@"%d",ticker);
 if(fbut.Adown == YES && ticker > 4)//fbut is a button
 {


  elayer = [[effectsLayer alloc] init]; // each effectlayer draws a //projectile that moves forward 'x' ticks

   elayer.e_playpos = glayer.playerpos; // player position
  [self addChild:elayer z:2];

  [mutable addObject: elayer];
 [elayer release];

  if(mutable.count > 20) // when there are 20 projectiles drawn, start //destroying the last one. 
  {
  NSLog(@"mutable: %d", mutable.count);

   [mutable removeLastObject];
  }  

  ticker=0;
 }
 ticker++;


// .  .  .
Run Code Online (Sandbox Code Playgroud)

这就是运行程序的样子

http://screencast.com/t/LpNHL2kJIVpu …

objective-c nsarray

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

[OBJ-C] [iOS]从NSArray获取浮点 - 问题

我最近遇到了一个问题.这是事情,我正在尝试从NSArray获取一个浮动对象来保存它,而我所能得到的只是(null).显然不是我想要收到的东西.看一下代码片段:

h = [[NSMutableArray alloc] initWithObjects:[NSNumber numberWithFloat:1.0],[NSNumber numberWithFloat:1.0],[NSNumber numberWithFloat:1.0], nil];
x = [[NSMutableArray alloc] initWithObjects:[NSNumber numberWithFloat:1.0],[NSNumber numberWithFloat:2.0], nil]; 
y = [[NSMutableArray alloc] init];

int step = 15; // That is just a random value, will depend on size of h and x.

for (int i = 0; i < step; ++i) {
   NSLog(@"step = %i", i);


 NSMutableArray *xTemp = [[NSMutableArray alloc] initWithArray:x];
 NSMutableArray *hTemp = [[NSMutableArray alloc] initWithArray:h];

 for (int j = 0; j < 3; ++j) {

   float xToMul …
Run Code Online (Sandbox Code Playgroud)

objective-c nsarray iphone-sdk-3.0 ios

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

可以使用空值初始化NSArray吗?

我有以下通常包含CGColor的数组:

_strokeColors = [[NSArray alloc] initWithObjects:NULL,NULL,NULL,NULL, nil];
Run Code Online (Sandbox Code Playgroud)

我有与此阵列(即平行一些其他阵列_fillColors,_mutuablePaths),其具有的值的相同的量.我遍历所有这些数组以检查数据,在这个特定的实例中,所有数组_strokeColors都必须为NULL.但是,我注意到上面的数组大小为0.

初始化这样的数组需要为每个值读取NULL的模式是什么?

iphone cocoa-touch objective-c nsarray ios

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

如何为阵列工作制作NSSortDescriptor?

我设法创建Array的MyLocation与在第2个选项卡设置的距离属性的对象tabBarController.在我的第二个标签中,我得到它viewDidLoad:

[self setAnnotationsToSort:myDelegate.annotationsToSort];
Run Code Online (Sandbox Code Playgroud)

在这一行之后我称这种方法:

-(void)sort{
    NSSortDescriptor *sortDescriptor;
    sortDescriptor = [[[NSSortDescriptor alloc] initWithKey:@"distance" ascending:YES] autorelease];
    NSArray *sortDescriptors = [NSArray arrayWithObject:sortDescriptor];
    NSArray *sortedArray;
    sortedArray = [self.annotationsToSort sortedArrayUsingDescriptors:sortDescriptors];
    [self.tableView reloadData];
}
Run Code Online (Sandbox Code Playgroud)

这应该排序我的Array.但是我tableView目前加载了未分类的版本Array,self.annotationsToSort.我如何重新加载tableView但强制它使用新的sortedArray?

objective-c nsarray nssortdescriptor ios

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

iOS重新排序UITableView

我有一个UITableView从sql db读取数据.

当我重新排序数据时,它只会改变顶部和底部数据

在此输入图像描述

从上到下拖动1

在此输入图像描述

当我让它在5时它只切换顶部和底部.

在此输入图像描述 我使用以下内容

- (void)tableView:(UITableView *)tableView moveRowAtIndexPath:(NSIndexPath *)fromIndexPath toIndexPath:(NSIndexPath *)toIndexPath {

            [myStringsArray exchangeObjectAtIndex:fromIndexPath.row withObjectAtIndex:toIndexPath.row];

}
Run Code Online (Sandbox Code Playgroud)

我如何重新排序列表?所以它将是2,3,4,5,1而不是5,2,3,4,1

uitableview nsarray ios

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

如何确定nsarray/nsmutablearray中是否存在具有给定属性的对象

我有一个NSMutableArray,我想检查是否有一个对象,其中某个属性设置为特定值.例如,数组充满了用户,我想检查是否有一个变量user_id设置为67的对象.有没有办法用块或谓词或其他东西执行此操作而不必循环遍历数组?

arrays objective-c nsarray ios

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

Objective-C如何从NSArray中提取几个随机项而不会出现重复项?

我有一系列随机属性我想分配给我正在开发的游戏中的设备.

我在下面使用的代码是返回NSArray.我很感兴趣,如果有方法从该数组中获取项索引而不获取重复值.显而易见的解决方案是使用返回的数组创建一个可变数组,执行随机操作,删除返回的项目并循环直到收到项目数.

但是有没有不同的方法从NSArray获取X随机项而不会重复?

//get possible enchantments
NSPredicate *p = [NSPredicate predicateWithFormat:@"type = %i AND grade >= %i", kEnchantmentArmor,armor.grade];

NSArray* possibleEnchantments = [[EquipmentGenerator allEnchantmentDictionary] objectForKey:@"enchantments"];

//get only applicable enchantments
NSArray *validEnchantments = [possibleEnchantments filteredArrayUsingPredicate:p];
NSMutableArray* mutableArray = [NSMutableArray arrayWithArray:validEnchantments];

NSDictionary* enchantment = nil;

if(mutableArray.count>0)
{
    //got enchantments, assign number and intensity based on grade
    for (int i = 0; i<3;i++)
    {
        enchantment = mutableArray[arc4random()%mutableArray.count];
        [mutableArray removeObject:enchantment];

        //create enchantment from dictionary and assign to item.
    }

}
Run Code Online (Sandbox Code Playgroud)

random objective-c nsarray ios

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

iOS,key =>来自NSArray的值

我已经找到了很多关于如何将数据编码成key => value样式的文档,但是我如何从数组中提取键和值呢?我正在使用NSArray.

我所追求的是obj-c与php的对等 foreach($array as $k => $v)

objective-c nsarray ios

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

NsArray ContainsObject不使用Custom NsObject Class

我正在检查我的一个数组是否包含了Nsobject我创建的自定义方式.我正在使用ContainsObjectmethod.my问题是包含对象不能正常工作.即使我在数组中有相同的对象它没有返回真值.

if([self.arrSelectedInterest containsObject:interest_ent])
Run Code Online (Sandbox Code Playgroud)

我还附加了我的调试点的屏幕截图,显示了nsarray和比较对象的值,并且我发现它interest_ent是一个包含in的同一个对象,self.arrSelectedInterest 但它总是返回false.

在此输入图像描述

任何人都知道如何检查我的自定义nsobject的nsarray是否包含特定的对象?

以下是我的哈希和isEqual方法,我已经覆盖并在nsobejct中抛出我的属性类型.@interface InterestEntity:JSONModel

@property (strong, nonatomic) NSString* InterestId;
@property (strong, nonatomic) NSString* Name;
@property (strong, nonatomic) NSString<Optional>* Code;
@property (strong, nonatomic) NSString<Optional>* Description;
@property (strong, nonatomic) NSArray<Optional>* Hashtags;


- (NSUInteger)hash {
    NSUInteger result = 1;
    NSUInteger prime = 31;

    result = prime * result + [self.InterestId hash];
    result = prime * result + [self.Name hash];
    result = prime * result + [self.Code hash];
    result = prime * result …
Run Code Online (Sandbox Code Playgroud)

compare objective-c nsarray nsobject ios

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

使用NSObject过滤NSArray

我想在tableView中使用searchbar.我有一个带有人的NSArray(NSObject).在cellForRow中,我正在使用此代码:

Person *person = [[self.sectionedPersonName objectAtIndex:indexPath.section] objectAtIndex:indexPath.row];
cell.textLabel.text = person.fullName;
Run Code Online (Sandbox Code Playgroud)

并为searchBar这段代码:

- (void)searchForText:(NSString *)searchText {
    if (searchText.length > 0) {
        searchBar = YES;
    } else {
        searchBar = NO;
    }
        NSLog(@"%@", self.sectionedPersonName);
        NSPredicate *predicate; = [NSPredicate predicateWithFormat:@"SELF.fullName beginswith[c] %@", searchText];
        self.searchResults = [self.sectionedPersonName filteredArrayUsingPredicate:predicate];
}
Run Code Online (Sandbox Code Playgroud)

self.sectionedPersonName 包含这个:

(
        (
        "<Person: 0x7fc0f6012650>"
    ),
        (
    ),
        (
    ),
        (
        "<Person: 0x7fc0f600f8a0>",
        "<Person: 0x7fc0f60132e0>"
    ),
        (
    ),
        (
    ),
        (
    ),
        (
        "<Person: 0x7fc0f6012d80>"
    ),
        (
    ),
        (
        "<Person: 0x7fc0f6012b30>"
    ),
        (
        "<Person: …
Run Code Online (Sandbox Code Playgroud)

objective-c uisearchbar nsarray nspredicate ios

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