调出一个数组,objectAtIndex

时间:2015-04-28 19:14:42

标签: ios objective-c arrays label

我有一个包含10个对象的Array。我拿第一个对象并将其放入我的Label String

然后我想要一个将objectAtIndex增加1的方法。

这是我的代码:

//.m
@interface GameViewController () {

   NSInteger _labelIndex;
   }
@property (nonatomic) NSArray *playerArray;
@property (nonatomic) NSString *playerLabel;

- (void)viewDidLoad {
    [super viewDidLoad];
    self.playerArray = [NSArray arrayWithObjects:@"FIRST", @"SECOND", @"THIRD", @"FOURTH", @"FIFTH", @"SIXT", @"SEVENTH", @"EIGTH", @"NINTH", @"TENTH", nil];
_labelIndex = 0;

[self updateTurnLabel];

self.turnLabel.text = [NSString stringWithFormat:@"YOUR %@ DRAW?", self.playerLabel];
}

在这里,我将方法称为另一种方法:

-(void) flipDraws {
   self.boardView.userInteractionEnabled = NO;
   [self updateTurnLabel];
   CardView *cv1 = (CardView *) self.turnedDrawViews[0];
   CardView *cv2 = (CardView *) self.turnedDrawViews[1];
   }

这是我的方法:

-(void) updateTurnLabel {

self.playerLabel = [self.playerArray objectAtIndex:_labelIndex % self.playerArray.count]; _labelIndex++;

}

我用for Loop尝试过,但什么都没发生。我只是设置了objectAtIndex:1,但我的Method没有被调用。

我做错了什么?

2 个答案:

答案 0 :(得分:1)

{
    int a;
}

- (void)viewDidLoad {
    [super viewDidLoad];

    a = 0;
    self.playerArray = [NSArray arrayWithObjects:@"FIRST", @"SECOND", @"THIRD", @"FOURTH", @"FIFTH", @"SIXT", @"SEVENTH", @"EIGTH", @"NINTH", @"TENTH", nil];
    self.playerLabel = [self.playerArray objectAtIndex:a];
    self.turnLabel.text = [NSString stringWithFormat:@"YOUR %@ DRAW?", self.playerLabel];
}

-(void) updateTurnLabel {

    a +=1;
    if (!a<[playerArray count])
    {
        a = 0;
    }


    self.playerLabel = [self.playerArray objectAtIndex:a];
}

调用self.turnLabel.text = [NSString stringWithFormat:@“你的%@ DRAW?”,self.playerLabel];在[self updateTurnLabel];

之后

答案 1 :(得分:0)

您在方法WebView中添加了什么+1。

您应该维护一个跟踪当前正在使用的索引的变量,然后在您的方法中使用它:

AlertDialog