生成具有空位的行和列中的按钮

时间:2015-06-05 05:01:57

标签: ios objective-c view cgrect

我想生成一个包含视图的网格。我需要从1行,1列到3行,6列。

我的代码现在正在工作,如果我想,所有观点都在他们的位置:

*  *  *  *  *
*  *  *  *  *
*  *  *  *  *

但我想把一些地方留空,例如我想做的事情如下:

*  *  *  *  *
*           *
*  *  *  *  *

或:

*  *    *  *
   *    * 
*          *

我的代码:

的.m

-(void) generateCardViews {
int positionsLeftInRow = CARDS_PER_ROW;
int j = 0; // j = ROWNUMBER (j = 0) = ROW1, (j = 1) = ROW2...

for (int i = 0; i < [self.gameModel.cards count]; i++) {
NSInteger value = ((CardModel *)self.gameModel.cards[i]).value;

CGFloat x = (i % CARDS_PER_ROW) * 121 + (i % CARDS_PER_ROW) * 40 + 285;
if (j == 1) {
    x += 80; // set additional indent (horizontal displacement)
}
if (j == 2) {
    x -= 160;
}

CGFloat y = j * 122 + j * 40 + 158;
CGRect frame = CGRectMake(x, y, 125, 125);




CardView *cv = [[CardView alloc] initWithFrame:frame andPosition:i andValue:value];


}

我该怎么做?

编辑: 现在我的代码: 如果gameModel.cards计数= 18(从我的模型得到这个),如果CARS_PER_ROW = 6我得到:

*  *  *  *  *  *
*  *  *  *  *  *
*  *  *  *  *  *

如果gameModel.cards计数= 12(从我的模型得到这个),如果CARS_PER_ROW = 5我得到:

*  *  *  *  *
*  *  *  *  *
*  *

1 个答案:

答案 0 :(得分:0)

我认为你可以在一个arrary中创建所有框架,然后从arrary中生成按钮。