0

我想在屏幕上放一堆与数组插槽相对应的按钮。例如,buttonA 对应于 myArray[3][28]。

我是否必须有大量这样的 else-if 语句:

else if (x == 3 && y == 28)
    //"it's buttonQ" code
else if (x == 3 && y == 29)
    //"it's buttonR" code

或者,还有更好的方法?

注意:x 是二维数组 myArray 的“水平”索引,而 y 是它的“垂直”索引

4

1 回答 1

0

我认为设计一个方案是可行的,您可以将位置用作数据方案的一部分。在我看来,这就是您正在做的事情,因为您将水平坐标与字母表中的字母相关联。

因此,您可以执行以下操作:

NSString *letters = @"ABCDEFGHIJKLMNOPQRSTUVXYZ";

...
else if (x == 3) {
   NSString *letter = [NSString stringWithFormat:@"%c"
                             [letters characterAtIndex:y-11]];
   // use letter in your code
}
...

同样,您可以在更复杂的按钮矩阵中考虑到行的设备代码。

于 2013-03-13T22:47:13.893 回答