UIButton阵列的表现非常糟糕

时间:2014-12-04 22:51:27

标签: ios objective-c arrays performance uibutton

我正在尝试实现一个棋盘游戏,我需要一个40 * 26按钮的棋盘尺寸。

我按如下方式实施此板:

sizeX = 7.55;
sizeY = 7.35;
for (int i=0; i<nb_lignes; i++)
{
    for (int j=0; j<nb_colonnes; j++)
    {
        UIButton * test = [UIButton buttonWithType:UIButtonTypeRoundedRect];
        [test setFrame:CGRectMake((100-sizeX)+(j*(sizeX)), 50+(i*(sizeY)), (sizeX), (sizeY))];
        [test setBackgroundColor:[UIColor redColor]];
        [test setAlpha:0.5];
        [test setTitleColor:[UIColor clearColor] forState:UIControlStateNormal];
        [test setTitle:[NSString stringWithFormat:@"%i %i", j+1, i+1] forState:UIControlStateNormal];
        [test addTarget:self action:@selector(touchBouton:) forControlEvents:UIControlEventTouchUpInside];
        [self.view addSubview:test];
        [[LevelButton objectAtIndex:i] addObject:test];
    }
}

我没有采取任何行动,游戏真的很慢。例如,当我尝试使用辅助触摸时,它真的很慢。 您是否了解我如何改善应用程序的性能?

1 个答案:

答案 0 :(得分:0)

您可以尝试-[NSArray enumerateObjectsUsingBlock:]

,而不是使用for循环

有关详细信息,请查看this Stack Overflow answer about using it