UIButton - 触摸变化图像

Sam*_*007 14 iphone objective-c uibutton ios uicontrolstate

当我在那时触摸按钮时,我想要更改图像,当我释放触摸按钮时,图像就是这样.

我想申请下面的代码,但这不符合我的期望.

请给我任何建议.....

   -(IBAction)actionEnter:(id)sender{
            if ([sender isSelected]) {
                [sender setImage:[UIImage imageNamed:@"enter-hover.png"] 
                        forState:UIControlStateNormal];
                [sender setSelected:NO];
            } else {
                [sender setImage:[UIImage imageNamed:@"enter.png"] 
                        forState:UIControlStateSelected];
                [sender setSelected:YES];
            }
Run Code Online (Sandbox Code Playgroud)

tas*_*oor 14

您可以使用UIControlStateHighlighted.

[myButton setImage:[UIImage imageNamed:@"enter-hover.png"] 
          forState:UIControlStateHighlighted];

您还可以通过将图像设置为突出显示状态,从界面构建器中进行设置.


vis*_*kh7 6

我认为应该这样做.创建按钮后设置图像

[yourButton setImage:[UIImage imageNamed:@"enter-hover.png"] 
            forState:UIControlStateSelected];
[yourButton setImage:[UIImage imageNamed:@"enter.png"]  
            forState:UIControlStateNormal];
Run Code Online (Sandbox Code Playgroud)

并做到这一点

- (IBAction)actionEnter:(id)sender{
    UIButton *button = (UIButton *)sender;
    button.selected = !button.selected;
}
Run Code Online (Sandbox Code Playgroud)