3

我到处都在寻找这个,但我找不到解决方案......

我的目标:我试图在我的故事板中编辑一个标签,而不是专门为该标签创建一个出口(我有 36 个标签)。

问题:我尝试了在另一个 Stack Overflow 问题中找到的基本代码行,但没有成功,并且出现错误...

UILabel *label = (UILabel *)[self viewWithTag:71];

错误:No visible @interface for 'ViewControllerTwo' declares the selector 'viewWithTag:'

任何帮助将不胜感激...

4

4 回答 4

9

将您的代码更改为

                                    |
                                    v
UILabel *label = (UILabel *)[self.view viewWithTag:71];

UIViewController没有viewWithTag:,UIView

于 2012-04-15T00:18:57.257 回答
4

viewwithTag 是 UIView 上的方法,而不是 UIViewController 上的方法。你可能不得不这样称呼它:

UILabel *label = (UILabel *)[self.view viewWithTag:71];
于 2012-04-15T00:18:44.723 回答
1

尝试使用self.view

UILabel *label = (UILabel *)[self.view viewWithTag:71];
于 2012-04-15T00:18:29.940 回答
0

正如@Paul.s 所说,IBOutletCollection可能是更好的方法。以防万一您需要IBOutletCollection

@property (nonatomic, strong) IBOutletCollection(UILabel) NSArray *labels;

或者在 Swift 中:

@IBOutlet var imageViews: [UIImageView]!
于 2018-07-14T05:49:48.300 回答