iphone - for循环递增

标签 iphone ios objective-c

我是 iOS 开发的初学者,所以这是我的问题,

我正在尝试实现一个简单的战舰游戏,我手动将我的战舰放入 allCoordinates 数组,第一个元素是 x 坐标,第二个元素是 y 坐标,第三个元素是战舰的大小。

问题是;每次尝试都必须只增加一次命中和未命中,但是当用户进入第 6 艘船时,命中变为 1,未命中变为 5,因为循环继续检查每一行并增加未命中。

我不能在错过++ 之后就休息一下,所以我在这里没有想法。

谢谢:

for ( int i=0 ;i<19;i++ ){


    if ([self.xCoordinate.text isEqualToString:[allCoordinates objectAtIndex:i*3]] && 
        [self.yCoordinate.text isEqualToString:[allCoordinates objectAtIndex:i*3+1]] )

    {



        NSLog(@"hit");

        hit++;

        result.text = [NSString stringWithFormat:@"You hit %ix1 ship",[allCoordinates objectAtIndex:i*3+2]];

        break;
    }else {

        NSLog(@"not hit");
       result.text = [NSString stringWithFormat:@"You missed"];


        missed++;

    }

hitLabel.text = [NSString stringWithFormat:@"%i!",hit];

missed = missed%18;

missedLabel.text = [NSString stringWithFormat:@"%i!",missed];

这是我的数组

allCoordinates = [[NSArray alloc] initWithObjects:
                          @"15",@"2",@"3",
                          @"13",@"2",@"3",
                          @"14",@"2",@"3",
                  @"10",@"7",@"3",
                  @"11",@"7",@"3",
                  @"12",@"7",@"3",
                    @"16",@"8",@"3",
                    @"16",@"9",@"3",
                    @"16",@"10",@"3",
                          @"3",@"4",@"4",
                          @"4",@"4",@"4",
                          @"5",@"4",@"4",
                          @"6",@"4",@"4",
                  @"9",@"10",@"4",
                  @"9",@"11",@"4",
                  @"9",@"12",@"4",
                  @"9",@"13",@"4",
                          @"5",@"14",@"1",
                          @"18",@"17",@"1",
                            nil];

编辑:我通过在 for 循环之后放置一个 BOOL ishit 来修复它,它解决了我的问题

   if(ishit==YES){

    hit++;

}else {
    missed++;
}

最佳答案

如果您对命中感兴趣,请计算循环期间的命中。不要计算未命中。无论如何,计数似乎并不重要,所以只要使用 BOOL 来判断是否有任何命中。循环后,如果有任何命中,则设置命中文本。如果没有,则都是未命中,您应该设置未命中文本。

关于iphone - for循环递增,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17528434/

相关文章:

swift - iPhone Avplayer 中的 PIP 按钮

iphone - AVAudioPlayer 后台任务不起作用 [iOS]

java - 客户端与服务器之间的对象传输

ios - 时间比较不起作用。有什么问题吗?

objective-c - 如何在不使用 Objective-C 中的 "exit"命令的情况下组合两个有循环的方法?

iphone - UITableViewController 不加载数据

ios - 如何在 iOS 11 正式发布前提交适用于 iOS 11 的应用程序?

iOS - 应用程序因指南 2.10 而被拒绝 - iPad 的解决方案 - 如何修复?

ios - UITableView 单元格显示错误的图像

objective-c - 界面生成器 : How to load view from nib file