我能在xcode中通过恢复id获得一个对象吗



我已经在storyboard中创建了许多文本字段,并将对象注册到ViewController.h

@property (weak, nonatomic) IBOutlet UITextField *a0;
@property (weak, nonatomic) IBOutlet UITextField *a1;
@property (weak, nonatomic) IBOutlet UITextField *a2;
@property (weak, nonatomic) IBOutlet UITextField *a3;
...

我想在文本字段之间添加一些东西,例如检查textfield的值是否为0。现在我必须写很多if-else语句。

if(self.a1.text==0){
    //do something
}else if(self.a2.text==0){
    //do something
}...

我想用一个循环来做这件事。我可以使用恢复id来获取文本字段的对象吗?假设我已经按顺序分配了一个恢复id(即a0,a1,a2…)

for(int i=0; i<10;i++){
     if(findViewById("a"+i).text==0){
          //do something
     }
}

我可以这样做吗?

您可以使用tags,或者您可以使用IBOutletCollection而不是每个UITextField都有单独的@property。要将值与"0"进行比较,可以这样做:

[self.a1.text isEqualToString:@"0"]

相关内容

最新更新