当用户按下该按钮时,我想更改UIButton上的图像.所以,我写道
btnthumbnail2 setImage:[UIImage imageNamed:@"leaderboard_ov.png"] forState:UIControlStateNormal];
Run Code Online (Sandbox Code Playgroud)
然后我改变了观点.
图像正在改变但不显示已更改的图像.我认为控件进入下一个视图,这就是它发生的原因.但我想表明改变,我该怎么做?Plz帮我这个..
Nic*_*oft 98
我正在使用Interface Builder,我在其中添加了一个UIButton视图.
我定义的按钮选择默认并选择我的形象,为选定的状态(使用下拉列表中的Inspector窗口选择" 选中状态配置选择前映像").
IBAction在控制器中创建一个并将按钮连接到该操作.
然后看下面的代码:
-(IBAction) toggleUIButtonImage:(id)sender{
if ([sender isSelected]) {
[sender setImage:unselectedImage forState:UIControlStateNormal];
[sender setSelected:NO];
} else {
[sender setImage:selectedImage forState:UIControlStateSelected];
[sender setSelected:YES];
}
}
Run Code Online (Sandbox Code Playgroud)
我认为这是一个非常顺利的解决方案.希望能帮助到你!
Anj*_*aan 22
这是我做的最简单的方式,每次都有效
-(void)buttonTouched:(id)sender
{
UIButton *btn = (UIButton *)sender;
if( [[btn imageForState:UIControlStateNormal] isEqual:[UIImage imageNamed:@"icon-Locked.png"]])
{
[btn setImage:[UIImage imageNamed:@"icon-Unlocked.png"] forState:UIControlStateNormal];
// other statements
}
else
{
[btn setImage:[UIImage imageNamed:@"icon-Locked.png"] forState:UIControlStateNormal];
// other statements
}
}
Run Code Online (Sandbox Code Playgroud)
您可以对其他状态使用其他类似检查,例如SELECTED,ENABLED,HIGHLIGHTED.
zpa*_*ack 11
你在那里的代码应该可以正常工作,但我猜测按钮图像在下一次运行事件循环之前不会显示更改,所以在视图切换之前你没有看到它.
这是一种黑客攻击,但您可以尝试稍微延迟视图更改,以便按钮更新.
所以不是这样的:
[btnthumbnail2 setImage:[UIImage imageNamed:@"leaderboard_ov.png"] forState:UIControlStateNormal];
[self showMyOtherView];
Run Code Online (Sandbox Code Playgroud)
试试这个:
[btnthumbnail2 setImage:[UIImage imageNamed:@"leaderboard_ov.png"] forState:UIControlStateNormal];
[self performSelector:@selector(showMyOtherView) withObject:self afterDelay:0.01];
Run Code Online (Sandbox Code Playgroud)
小智 5
如果您想在单击按钮时更改图像,这种方式非常有效:
-(IBAction)buttonClicked: (id)sender
{
UIButton *buttonObj = (UIButton*)sender;
[buttonObj setBackgroundImage:[UIImage imageNamed:@"myImage.png"]
forState:UIControlStateNormal];
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
87009 次 |
| 最近记录: |