[英]changing attributes on a collection of UITextFields
我在視圖中有UITextFields的集合。 我需要先禁用所有功能,然后再啟用它們。 目前,我分別進行更改。 有沒有辦法以編程方式循環執行此操作? TIA。
Use this it will help you enabled=NO or YES
for(id viewid in [self.view subviews])
{
if([viewid isKindOfClass:[UITextField class]])
{
UITextField *txt_temp = (UITextField *)viewid;
txt_temp.enabled=NO;
}
}
假設您的UITextField
實例保存在名為myFieldCollection
的集合中,則可以執行以下操作:
- (void) disableFields {
for (UITextField* field in myFieldCollection) {
field.enabled = NO;
}
}
- (void) enableFields {
for (UITextField* field in myFieldCollection) {
field.enabled = YES;
}
}
根據您的開幕詞,我假設您已經將它們放在集合中。 如果您不這樣做,則可以輕松地使用Interface Builder為文本字段設置“參考插座集合”。
要使用上述方法,您只需執行以下操作:
//disable
[self disableFields];
//enable
[self enableFields];
NSArray *array = [view subviews];
禁用子視圖:
[array makeObjectsPerformSelector:@selector(setEnabled:) withObject:(id)NO];
啟用子視圖:
[array makeObjectsPerformSelector:@selector(setEnabled:) withObject:(id)YES];
注意此處的withObject:參數。 在轉換對象類型時,只需將布爾常量YES或NO轉換為id即可 !
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.