iOS:我用标签设置我的 uibuttons。如何根据标签更改特定按钮图像?

标签 ios iphone objective-c tags uibutton

我有多个按钮阵列,称为按钮。每一个都被标记。如何仅根据标签和标签更改按钮上的图像。截至目前,它只更改了最后一个按钮。

    -(void)buttonTapped:(id)sender{

     NSLog (@"%i",[sender tag])];

      [button setImage:[UIImage imageNamed:@"button_change.png"] forState:UIControlStateNormal];
        }

最佳答案

或者:

for (UIButton *btn in button) {
    if(btn.tag == 1)
    {
        // do something
        break; // don't need to run the rest of the loop
    }
}

如果你想使用数组(它不应该被称为'button',使用带有复数形式的数组)

或更简单的方法:

UIButton *btn = (UIButton *)[self.view viewWithTag:1];

然而,更简单的方法是在回调中使用参数(除非那不是您想要的按钮)。像这样:

-(void)buttonTapped:(id)sender
{
     UIButton *tappedBtn = (UIButton *)sender;
     [tappedBtn setImage:[UIImage imageNamed:@"button_change.png"] forState:UIControlStateNormal];
}

关于iOS:我用标签设置我的 uibuttons。如何根据标签更改特定按钮图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22152999/

相关文章:

ios - 显示 iOS 中安装应用程序时的通知计数

iphone - 使用 objective-c 从 Microsoft Exchange Server 读取邮件和文件夹列表

iphone - 如何同时从 UITableView 插入和删除一行

iphone - 如何从COCOS3D中的URL加载.pod文件

objective-c - 如果 iAds 失败,如何集成 iAds 和 AdMob

ios - 有没有办法像 UIAppearance 协议(protocol)一样为整个 ios 应用程序禁用预测文本?

ios - Crashlytics Mac 应用程序如何工作?

ios - 如何在 Swift 中更改具有多个组件的 UIPickerView 的文本颜色?

iphone - 如何访问另一个类的方法?

objective-c - Objective C - 此方法和代码行的含义?