我的 XIB 中有几个文本字段(和标签),在我的应用程序中的某个时刻,我动态构建一个包含控件名称的字符串(即文本字段之一)。 如何使用我创建的保存文本字段名称的字符串来引用实际的文本字段。
例如,我有 txt1 、 txt2 、 txt3 、 txt4 作为 UITextFields 我有一个字符串(str),其中包含名称上方的字段之一(str =“txt3”) 然后我想更改 uitextfield txt3 的内容,因为 str 有“txt3” 此时。
如何从字符串转换到实际控件?
最佳答案
如果 UITextField
都具有支持属性,那么您可以使用 KVC 获取对控件的引用,然后照常使用它。
NSString *str = @"txt1";
UITextField *myTextField = [self valueForKey:str];
myTextField.text = @"what ever you want to update to";
旁注
尽管您没有提到 str
的来源,@JefferyThomas 提出了一个非常有效的观点,即不信任未经验证的使用输入。
关于iphone - 使用控件名称作为字符串转换为控件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10626666/