如何检查Xcode中的按钮图像

Sim*_*nus 6 cocoa-touch uibutton ios

我目前正试图找出是否可以检查按钮使用的图像.

可以说我有image1和image2.

如果按钮图像是image1,请执行此操作,如果按钮图像是image2,请执行此操作.

但是xcode并没有给我任何自动填充选项....

[m1 setImage:[UIImage imageNamed: @"Penguin.png"] forState:UIControlStateNormal];
Run Code Online (Sandbox Code Playgroud)

这就是我设置图像的方式.但我如何找到它的企鹅或企鹅2?

pau*_*kow 6

Cocoa Touch是围绕模型 - 视图 - 控制器模式设计的,因此您可能希望尝试采用该模式.而不是尝试从视图中检索状态信息 - 选定的企鹅 - 按钮 - 将其存储在控制器类的实例变量中.

您设置图像的代码可能如下所示:

self.currentImage = @"Penguin.png";
[m1 setImage:[UIImage imageNamed: currentImage] forState:UIControlStateNormal];
Run Code Online (Sandbox Code Playgroud)

然后当你需要检查值时:

if ([@"Penguin.png" isEqual:self.currentImage]) {
    do something;
}
Run Code Online (Sandbox Code Playgroud)


Dre*_*her 6

刚刚在图像的基础上使用此代码进行按钮操作

- (IBAction)checkButtonClicked:(UIButton *)sender {

    if ([checkButton.currentImage isEqual:[UIImage imageNamed:@"checkbox.png"]]) 
        [checkButton setImage:[UIImage imageNamed:@"Checked.png"] forState:UIControlStateNormal];
//do some thing here for your image1

        else
    [checkButton setImage:[UIImage imageNamed:@"checkbox.png"] forState:UIControlStateNormal];
    //do some thing here for your image 2

}
Run Code Online (Sandbox Code Playgroud)