【发布时间】:2010-04-04 21:10:33
【问题描述】:
我的 iPhone 应用程序中有一个非常具体的“错误”。我正在为按钮的突出显示和正常状态设置两个图像。当您“按下”然后以缓慢的速度“润色”时,它会按预期工作,但如果您快速单击/点击它,状态之间会出现明显的闪烁。这是一个已知的错误还是我错误地设置了状态?
这是创建按钮的代码:
UIImage *normalImage = [[UIImage imageNamed:@"btn-small.png"] stretchableImageWithLeftCapWidth:10.0f topCapHeight:0.0f];
UIImage *highlightedImage = [[UIImage imageNamed:@"btn-small-down.png"] stretchableImageWithLeftCapWidth:10.0f topCapHeight:0.0f];
[self setBackgroundColor:[UIColor clearColor]];
[self setBackgroundImage:normalImage forState:UIControlStateNormal];
[self setBackgroundImage:highlightedImage forState:UIControlStateDisabled];
[self setBackgroundImage:highlightedImage forState:UIControlStateHighlighted];
[self setAdjustsImageWhenDisabled:FALSE];
[self setAdjustsImageWhenHighlighted:FALSE];
当一个按钮被点击时,它只是禁用自身并启用另一个按钮:
- (IBAction)aboutButtonTouched:(id)sender
{
aboutButton.enabled = FALSE;
rulesButton.enabled = TRUE;
}
- (IBAction)rulesButtonTouched:(id)sender
{
rulesButton.enabled = FALSE;
aboutButton.enabled = TRUE;
}
对这种快速点击闪烁有什么想法吗?
【问题讨论】:
标签: iphone objective-c button