我有4个UITextField
用于输入每个文本字段中的数字。我有一个button action
。因此,当我在3秒后按下我的按钮时,我的所有UITextField
字段中的所有数据都应自动清除。
我知道:textfield1.text = ""
但我不知道如何使用delay
并在我的UITextField
字段中清除我的数据。请帮帮我。我正在使用swift 2.2
由于
答案 0 :(得分:3)
您可以在3秒后设置NSTimer计划,并在清除文本的操作中设置。
答案 1 :(得分:3)
let delayTime = dispatch_time(DISPATCH_TIME_NOW, Int64(3 * Double(NSEC_PER_SEC)))
dispatch_after(delayTime, dispatch_get_main_queue()) {
textfield1.text = ""
}
答案 2 :(得分:1)
第1步:
@interface ViewController ()<UITextFieldDelegate>
@property (strong, nonatomic) NSTimer *timer;
@end
第2步:按钮点击操作
if (self.timer) {
[self.timer invalidate];
self.timer = nil;
}
_timer = [NSTimer scheduledTimerWithTimeInterval:3 target:self selector:@selector(clearTextField:) userInfo:nil repeats:NO];
第3步:
- (void) clearTextField :(NSTimer *) timer {
// Clear textfield
[self.timer invalidate];
self.timer = nil;
}
答案 3 :(得分:1)
你有很多选择:
1)
let delayTime = dispatch_time(DISPATCH_TIME_NOW, Int64(3 * Double(NSEC_PER_SEC)))
dispatch_after(delayTime, dispatch_get_main_queue()) {
textfield1.text = ""
}
2)NSTimer
3)performSelector:withObject:afterDelay: