如何在iPhone中单击时更改按钮背景图像?
答
[myButton setImage:[UIImage imageNamed:@"btn_normal.png"] forState:UIControlStateNormal];
[myButton setImage:[UIImage imageNamed:@"btn_highlighted.png"] forState:UIControlStateHighlighted];
[myButton setImage:[UIImage imageNamed:@"btn_highlighted.png"] forState:UIControlStateSelected];
myButton.showsTouchWhenHighlighted = YES;
第四行myButton.showsTouchWhenHighlighted = YES;会做的伎俩。请尝试。
答
每次用户点击视图中的任何按钮时,都需要设置图像。 所以,当用户点击你的按钮,将其图像设置为你想要的东西(让我们假设它更黑),其余的按钮正常图像(让我们假设更轻)。然后当用户点击其他按钮时,重复该过程。
[yourButton setImage:[UIImage imageNamed:youImage] forState:UIControlStateNormal];
希望这会有所帮助。
答
你有没有考虑过使用UISegmentedControl?这支持剩下的功能,直到另一个按下。只需查看文档即可找到设置图像的方法并以编程方式设置所选片段。
+0
正在寻找“Button” – Devang 2011-03-23 06:30:52
答
工作代码:
// 1) Give tag to all needed button
// 2) check which button is selected by "sender tag"
// 3) set all other buttons to not selected
-(IBAction) buttonPressed:(id)sender
{
if ([sender isSelected])
{
[sender setImage:unselectedImage forState:UIControlStateNormal];
[sender setSelected:NO];
}
else
{
[sender setImage:selectedImage forState:UIControlStateSelected];
[sender setSelected:YES];
}
}
+1:myButton.showsTouchWhenHighlighted,今天我学到了一些新东西!:O谢谢,不知道这个在那里直到现在^^ – 2013-03-19 16:39:07