如果一个文本字段不是空的,如何启用一个UIButton?
我的UITextField和三个UIButtons有问题。 我想在UITextfield为空时禁用button,当它有文本时重新启用。 我已经试过这个:
- (IBAction)validateFields:(id)sender { NSString *trimName = [URLToTrim stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]]; if (trimName.length >0) { trim.enabled = 1; trim2.enabled = 1; trim3.enabled =1; // proceed with your inserting values } }
和这个:
-(void)viewDidLoad { if([URLToTrim.text isEqualToString: @""]){ trim.hidden = YES; trim2.hidden = YES; trim3.hidden = YES; } else { trim.hidden = NO; trim2.hidden = NO; trim3.hidden = NO; }
最后,这个:
-(void)viewDidLoad { if ([URLToTrim.text isEqualToString:@""]) { trim.enabled = 0; trim2.enabled= 0; trim3.enabled = 0; }
但是第一个应用程序在写入时会崩溃,第二个应用程序不会重新启用button。 先谢谢您的帮助 :)
看来URLToTrim是一个UITextField? 第一个问题是你在文本字段本身调用stringByTrimmingCharactersInSet:
而不是文本字段的值。 你可以在另外两个地方使用URLToTrim.text
。
第二个问题是viewDidLoad
仅在视图第一次被加载时被调用,所以它再也不会被调用来重新启用button。 你想在你的UITextFieldDelegate的方法之一(它可能已经是你的相同的视图控制器),代码可能textField:shouldChangeCharactersInRange:replacementString:
虽然textFieldShouldEndEditing:
/ textFieldDidEndEditing:
可以工作,如果你只想要更新button时你完成编辑。
- 使用ASIFormDataRequest发送json到php
- 尝试在iOS中将图像保存为具有自定义名称的相册
- 如何在iOS 7锁屏上设置当前的播放时间和播放时间?
- ld:在iOS 4.3上复制符号_objc_retainedObject,但不在iOS 5.0上
- 第一次启动时,iCloud KeyValue存储未被识别
- 从Apple服务器获取空白响应订阅状态URL IAP,状态更新通知statusUpdateNotification
- 我如何获得iOS中的子string?
- Xcode 8.2.1 / Swift 3 – 从Plist字典数组中加载TableView
- Xamarin Studio 5.9.7(版本9)和Xamarin.iOS 9.0.1.18中的Codesign错误