textField の文字列値に設定したい UIDatePicker があります。2 番目の textField をタップすると、UIDatePicker が最初の textField の値を取得し、それを datePicker の開始時間として使用するようにします。
これは正しく機能しますが、2 番目の textField を 2 回タップした場合のみです。初めてタップすると、テキスト フィールドが選択され (黄色に変わります)、時刻は毎回午前 6 時に設定されます。textField をもう一度タップすると、timePicker が正しく設定されています...
これは、1 回タップした結果です。
これは 2 回目のタップの結果です。
更新:これはタップ用に実装されたコードです:
- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField{
[textField resignFirstResponder]; // don't display the k/b
if (textField.tag == kStartTimeTag) {
textFieldTag = kStartTimeTag;
textField.backgroundColor = [UIColor colorWithRed:252.0/255.0 green:255.0/255.0 blue:197.0/255.0 alpha:1.0];
}
else if (textField.tag == kEndTimeTag) {
textField.backgroundColor = [UIColor colorWithRed:252.0/255.0 green:255.0/255.0 blue:197.0/255.0 alpha:1.0];
textFieldTag = kEndTimeTag;
// now, set end time equal to start time
[self.oTimePicker setDate:dateFromString(oStartTime.text, @"HH:mm")];
}
return NO;
}
最初のタップでこれを機能させる方法はありますか?