Objective c 如何在单击按钮操作时更改图像
我有编辑按钮编辑和删除按钮删除行动。如果单击“编辑”按钮,我需要显示“完成”按钮图像。然后用户完成删除操作,再次按完成我需要显示编辑按钮和图像。之前我已经完成了文本。如何处理图像Objective c 如何在单击按钮操作时更改图像,objective-c,uitableview,uiimageview,uibutton,Objective C,Uitableview,Uiimageview,Uibutton,我有编辑按钮编辑和删除按钮删除行动。如果单击“编辑”按钮,我需要显示“完成”按钮图像。然后用户完成删除操作,再次按完成我需要显示编辑按钮和图像。之前我已经完成了文本。如何处理图像 UIImage *bg = [UIImage imageNamed:@"edit.png"]; [editButton setBackgroundImage:bg forState:UIControlStateNormal]; // [editButton setTitle:@"Edit" forState:U
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__);
}
您可以执行完全相同的操作,但要使用图像:
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__);
}
像这样试试。您可以将图像设置为正常状态和选定状态。按“切换”按钮时,选定表格的状态将处于编辑模式,再次按“切换”按钮时,将按钮状态切换回正常状态
- (void)viewDidLoad
{
// ...
[editButton setImage:normalImage forState:UIControlStateNormal];
[editButton setImage:editmodeImage forState:UIControlStateSelected];
}
- (void)editButtonPressed:(UIButton *)button
{
tableView.editing = !tableView.editing;
editButton.selected = tableView.isEditing;
// ...
}
它正在工作..但当我点击编辑按钮时,它会显示编辑和帮助图像,两者都有
- (void)viewDidLoad
{
// ...
[editButton setImage:normalImage forState:UIControlStateNormal];
[editButton setImage:editmodeImage forState:UIControlStateSelected];
}
- (void)editButtonPressed:(UIButton *)button
{
tableView.editing = !tableView.editing;
editButton.selected = tableView.isEditing;
// ...
}