我正在创建一个iphone应用程序,其中我使用了25个按钮,并且每个按钮在正常模式下都显示了背景图像。我还在按钮的突出显示模式上设置了另一个图像。
最初按钮将以正常模式显示 现在我希望当按下按钮时,按钮应该更改为突出显示的状态,以便在那里显示另一个图像。 我这样做了:
button.highlighted = YES;
它正在工作,但它设置了一个分数的高亮显示的图像,然后按钮的正常状态再次回来。我使用以下代码创建按钮。
for (int i=0; i<25; i++) {
if (i > 0) {
if (i%5 == 0) {
xaxis = 28;
yaxis = yaxis+42;
}
}
iconButton[i] = [UIButton buttonWithType:UIButtonTypeCustom];
iconButton[i].frame = CGRectMake(xaxis, yaxis, 50, 40);
[iconButton[i] setBackgroundImage:[iconArray objectAtIndex:random] forState:UIControlStateNormal];
[iconButton[i] setBackgroundImage:[tapedIconArray objectAtIndex:random] forState:UIControlStateHighlighted];
[iconButton[i] addTarget:self action:@selector(changeImage:) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:iconButton[i]];
xaxis = xaxis+53;
}
我如何保持按钮的状态,我甚至尝试使用计时器,但应用程序崩溃然后。 请帮帮我
非常感谢提前
答案 0 :(得分:0)
我不确定这一点,但是通过为按钮的UIControlStateSelected设置图像来尝试它 即
[btn setImage:[UIImage imageNamed:@"selectedImage.png"] forState:UIControlStateSelected];