0

That's my code

int indiceCorrente=0; int differenza=delegate.reader.feedItems.count;

while(variable!=0){
switch(variable){

case 1: ----
case 2: ----


default: { 

                NSMutableIndexSet *add=[[[NSMutableIndexSet alloc]init] autorelease];
                [add addIndex:indiceCorrente];
                [add addIndex:indiceCorrente+1];
                [add addIndex:indiceCorrente+2];
                [self aggiungiElementoArrayLettura:add];





                //[page addObject:@"makeLayout3"];
                NSMutableArray *pagina=[[NSMutableArray alloc]init];

                indiceCorrente=indiceCorrente+1;
                [pagina addObject:indiceCorrente]; <------ EXC_BAD_ACCESS WHY????
                indiceCorrente=indiceCorrente+1;
                [pagina addObject:indiceCorrente];
                indiceCorrente=indiceCorrente+1;
                [pagina addObject:indiceCorrente];


                [pages addObject:pagina];

            }
}
}
Usi Usi
  • 2,967
  • 5
  • 38
  • 69

1 Answers1

2

you can't add primitive types (int, float, double...) into Foundation collection classes. You can only add objects. When you try to add an int, it is being cast into a pointer (id) and the array is trying to retain that. Try wrapping your ints in an NSNumber. That would look like

[pagina addObject:@(indiceCorrente)];

or

[pagina addObject:[NSNumber numberWithInt:indiceCorrente]];
Ahmed Mohammed
  • 1,134
  • 8
  • 10