2016-08-29 5 views
-1

私はNSMutableArrayの数字の配列を持ち、switchのケースを変更したいと思います。そしてすべての変数が宣言されました。そして私が何を試みても、アプリケーションは常にクラッシュします。 intを配列からswitchに渡すにはどうすればよいですか?NSMutableArrayを使用してスイッチのケースを変更します。目的C

-(NSMutableArray*)tasks { 
    tasks = [[NSMutableArray alloc] initWithObjects:[NSNumber numberWithInteger:1] ,[NSNumber numberWithInteger:2] ,[NSNumber numberWithInteger:3] ,[NSNumber numberWithInteger:4] ,[NSNumber numberWithInteger:5] ,.........,nil]; 
    return tasks; 
    } 

- (IBAction)random:(id)sender { 
    text = [[tasks objectAtIndex:x] integerValue]; 
    x++; 

     switch (text) { 


      case 0: 
       //something 
       break; 

      case 1: 
       //something 
       break; 

      case 2: 
       //something 
       break; 
. 
. 
. 
. 
. 
      case 22: 
       //something 
       break; 
      default: 

     } } 
+1

'tasks = @ [@ 1、@ 2 ...] – matt

+2

クラッシュは何を言いますか? –

答えて

0

これを試すことができますか?それは動作するはずです。

 
-(NSMutableArray*) tasks { 
    NSMutableArray *tasks = [[NSMutableArray alloc] initWithObjects:[NSNumber numberWithInteger:1] ,[NSNumber numberWithInteger:2] ,[NSNumber numberWithInteger:3] ,[NSNumber numberWithInteger:4] ,[NSNumber numberWithInteger:5],nil]; 
    return tasks; 
} 

- (IBAction)random:(id)sender { 
    int x = 0; 
    NSInteger text = [[self.tasks objectAtIndex:x] integerValue]; 
    x++; 

    switch (text) { 


     case 0: 
      //something 
      break; 

     case 1: 
      //something 
      break; 

     case 2: 
      //something 
      break; 
     case 22: 
      //something 
      break; 
     default: 
      ; 

    } 
} 

+0

はい、これは@Barryが指摘しているように問題になるかもしれません! self.tasksを使用しない限り、プロパティメソッドは呼び出されません。 –

+0

ありがとうございました。それは私のためにそれを解決しました。 :) –

関連する問題