0

在我看来,我有 10 个 UIButton,每个都有一个标签和一个标题。我可以通过使用访问其中一个按钮

int i;
UIButton *button = (UIButton *)[view viewWithTag:i];

是否有类似的方法可以通过其标题访问该按钮?像 [查看 buttonWithTitle:title] 之类的东西?

4

2 回答 2

1

您必须遍历每个按钮并将其标题与您要查找的标题进行比较。但这不是一个好方法。标题可以更改,或者您可以支持多种语言的应用程序。使用标签是更好的方法。给每个按钮自己的标签,很容易查找每个按钮。然后在需要时获取按钮的标题。

于 2012-10-18T22:15:51.967 回答
0

您可以通过像这样遍历按钮来制作一个由其标题键入的按钮的字典:

NSArray *buttons = (your buttons);
NSMutableDictionary *buttonDict = [NSMutableDictionary dictionary];
for (UIButton *button in buttons) {
  [buttonDict setObject:button forKey:[button titleForState:UIControlStateNormal]];
}

但是 rmaddy 是对的,用它们的标题来引用你的按钮真的不是一个好主意。如果您想单独识别它们,您可以创建UIButton描述性命名的实例变量,并将您的按钮分配给 ivars 中的 ivars viewDidLoad,这样您就知道在哪里可以找到它们。

于 2012-10-18T22:35:38.613 回答