如何在单击按钮操作时更改图像

Posted

技术标签:

【中文标题】如何在单击按钮操作时更改图像【英文标题】:How to change the image while clicking button action 【发布时间】:2014-07-23 12:15:04 【问题描述】:

我有编辑按钮来编辑和删除按钮来删除操作。如果我单击编辑按钮,我需要显示完成按钮图像。然后用户完成删除操作再次按下完成我需要显示带有图像的编辑按钮。以前我已经完成了文本。图片怎么处理?

 UIImage *bg = [UIImage imageNamed:@"edit.png"];
 [editButton setBackgroundImage:bg forState:UIControlStateNormal];
 //  [editButton setTitle:@"Edit" forState:UIControlStateNormal];

 -(void)editButtonPressed:(UIButton *)button



 NSLog(@">>> Entering %s <<<", __PRETTY_FUNCTION__);

 [tableview setEditing:![tableview isEditing] animated:YES];

 NSString *buttonTitle = ([tableview isEditing]) ? @"Done" : @"Edit";

 [editButton setTitle:buttonTitle forState:UIControlStateNormal];

 NSLog(@"<<< Leaving %s >>>", __PRETTY_FUNCTION__);


 

【问题讨论】:

【参考方案1】:
UIImage *img=[(UIButton *) sender currentImage];   

if(img == [UIImage imageNamed:@"edit"])
  
    //If do something
 

像这样试试。

【讨论】:

【参考方案2】:

你也可以做同样的事情,但使用图片:

UIImage *bg = [UIImage imageNamed:@"Edit"];
 [editButton setImage:bg forState:UIControlStateNormal];
 //  [editButton setTitle:@"Edit" forState:UIControlStateNormal];

 -(void)editButtonPressed:(UIButton *)button



 NSLog(@">>> Entering %s <<<", __PRETTY_FUNCTION__);

 [tableview setEditing:![tableview isEditing] animated:YES];

 NSString *buttonImageName = ([tableview isEditing]) ? @"Done" : @"Edit";

 [editButton setImage:[UIImage imageNamed: buttonImageName] forState:UIControlStateNormal];

 NSLog(@"<<< Leaving %s >>>", __PRETTY_FUNCTION__);


 

【讨论】:

它正在工作..但是当我单击编辑按钮时,它会显示编辑和帮助图像,两者都【参考方案3】:

您可以为正常状态和选定状态设置图像。按下切换按钮状态为选中状态(表格将处于编辑模式),再次按下切换按钮状态恢复正常。

- (void)viewDidLoad

    // ...
    [editButton setImage:normalImage forState:UIControlStateNormal];
    [editButton setImage:editmodeImage forState:UIControlStateSelected];


- (void)editButtonPressed:(UIButton *)button

    tableView.editing = !tableView.editing;
    editButton.selected = tableView.isEditing;
    // ...

【讨论】:

以上是关于如何在单击按钮操作时更改图像的主要内容,如果未能解决你的问题,请参考以下文章

如何通过单击选项卡来更改操作栏菜单按钮

在kivy中单击时如何更改按钮的背景图像?

如何在 swift 中单击按钮时更改 uiimage 的图像?

如何在按钮单击时更改图像视图大小[重复]

如何在 ios 中添加一组应在单击按钮时更改的图像? [关闭]

如何在单击并再次在 Windows Phone 中释放时更改按钮图像