- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
在我的应用程序中,我有一个要从日期选择器填充的 textfield
表单,我已将日期选择器指定为文本字段的输入 View 和一个 datePickerValueChanged
更改选择器时更改文本字段文本的功能。我的问题是,当点击应用程序中的数据选择器时,整个应用程序崩溃并显示
'terminating with uncaught exception of type NSException'
有什么想法吗?这是我的代码:
@IBOutlet var startDatePickerField: UITextField!
override func viewDidLoad() {
let startDatePicker:UIDatePicker = UIDatePicker()
startDatePicker.datePickerMode = UIDatePickerMode.dateAndTime
startDatePickerField.inputView = startDatePicker
startDatePicker.addTarget(self, action: #selector(popoverTableViewController.datePickerValueChanged(_:)), for: UIControlEvents.valueChanged)
}
func datePickerValueChanged(_ sender: UIDatePicker) {
let dateFormatter = DateFormatter()
dateFormatter.dateStyle = DateFormatter.Style.long
dateFormatter.timeStyle = DateFormatter.Style.short
startDatePickerField.text = dateFormatter.string(from: sender.date)
}
这都包含在 View Controller “popoverTableViewController”的类中。谢谢!
这是来自日志的崩溃报告:
2016-07-28 12:50:00.956 ClockIn_v2[5935:2049267] -[ClockIn_v2.popoverTableViewController startDateDidBegin:]: unrecognized selector sent to instance 0x7ff571c10720 2016-07-28 12:50:00.961 ClockIn_v2[5935:2049267] * Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[ClockIn_v2.popoverTableViewController startDateDidBegin:]: unrecognized selector sent to instance 0x7ff571c10720' * First throw call stack: ( 0 CoreFoundation 0x000000010fe5986b exceptionPreprocess + 171 1 libobjc.A.dylib
0x000000010f4b124e objc_exception_throw + 48 2 CoreFoundation
0x000000010fec7904 -[NSObject(NSObject) doesNotRecognizeSelector:] + 132 3 CoreFoundation 0x000000010fddfed5 ___forwarding_ + 1013 4 CoreFoundation 0x000000010fddfa58 _CF_forwarding_prep_0 + 120 5 UIKit
0x000000011027aaf0 -[UIApplication sendAction:to:from:forEvent:] + 83 6 UIKit 0x00000001103fda69 -[UIControl sendAction:to:forEvent:] + 67 7 UIKit 0x00000001103fdd82 -[UIControl _sendActionsForEvents:withEvent:] + 444 8 UIKit 0x0000000110d5b196 -[UITextField _resignFirstResponder] + 297 9 UIKit 0x000000011048d780 -[UIResponder _finishResignFirstResponder] + 286 10 UIKit 0x0000000110d5af94 -[UITextField _finishResignFirstResponder] + 49 11 UIKit 0x000000011048d82f -[UIResponder resignFirstResponder] + 140 12 UIKit 0x0000000110d5ae63 -[UITextField resignFirstResponder] + 136 13 UIKit
0x000000011048d4bf -[UIResponder becomeFirstResponder] + 358 14 UIKit 0x0000000110328dae -[UIView(Hierarchy) becomeFirstResponder] + 138 15 UIKit 0x0000000110d59d2e -[UITextField becomeFirstResponder] + 51 16 UIKit 0x00000001107af37b -[UITextInteractionAssistant(UITextInteractionAssistant_Internal) setFirstResponderIfNecessary] + 206 17 UIKit
0x00000001107b2b46 -[UITextInteractionAssistant(UITextInteractionAssistant_Internal) oneFingerTap:] + 3823 18 UIKit
0x00000001107a081d -[UIGestureRecognizerTarget _sendActionWithGestureRecognizer:] + 57 19 UIKit 0x00000001107a85b4 _UIGestureRecognizerSendTargetActions + 109 20 UIKit 0x00000001107a613b _UIGestureRecognizerSendActions + 540 21 UIKit 0x00000001107a539d -[UIGestureRecognizer _updateGestureWithEvent:buttonEvent:] + 1177 22 UIKit 0x00000001107911f2 _UIGestureEnvironmentUpdate + 1013 23 UIKit
0x0000000110790db5 -[UIGestureEnvironment _deliverEvent:toGestureRecognizers:usingBlock:] + 521 24 UIKit 0x000000011078ff2c -[UIGestureEnvironment _updateGesturesForEvent:window:] + 286 25 UIKit 0x00000001102e945c -[UIWindow sendEvent:] + 3989 26 UIKit
0x00000001102967a5 -[UIApplication sendEvent:] + 281 27 UIKit
0x0000000110a632c3 dispatchPreprocessedEventFromEventQueue + 3303 28 UIKit 0x0000000110a5be75 __handleEventQueue + 4879 29 CoreFoundation 0x000000010fdff5d1 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION + 17 30 CoreFoundation 0x000000010fde485c __CFRunLoopDoSources0 + 556 31 CoreFoundation 0x000000010fde3d46 __CFRunLoopRun + 918 32 CoreFoundation
0x000000010fde3754 CFRunLoopRunSpecific + 420 33 GraphicsServices
0x0000000114629a71 GSEventRunModal + 161 34 UIKit
0x0000000110278e9c UIApplicationMain + 159 35 ClockIn_v2
0x000000010eec96df main + 111 36 libdyld.dylib
0x00000001136a968d start + 1 ) libc++abi.dylib: terminating with uncaught exception of type NSException (lldb)
最佳答案
而不是使用
添加 ActionstartDatePicker.addTarget(self, action: #selector(popoverTableViewController.datePickerValueChanged(_:)), for: UIControlEvents.valueChanged)
在 Assistant editor 中打开它,在一个部分中打开 Storyboard,右键单击您的日期选择器,在事件列表中,单击“值已更改”(当您将鼠标悬停在它前面的空洞)并将其扩展到您的“popoverTableViewController.swift”文件。
关于ios - UIDatePicker 崩溃应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38635311/
我正在制作一个 iPhone 应用程序,我在其中使用 UIDatePicker 并在操作表中显示选定的时间。在操作表中,时间以 10 分钟的间隔显示。当我滚动 Datepicker 时, textfi
这是我第一次尝试 Swift 或 iPhone 应用程序,所以不用说,我现在不确定如何做很多事情。 现在我有一个带有文本字段和按钮的 View Controller 。我设法找到了几乎可以完成我需要的
我目前正在尝试弄清楚如何使用 ( .wheels) 将代码从 iOS 13 UIDatePicker 更改为 iOS 14 版本。您将在下方找到带有无法正常运行的日期选择器的应用程序屏幕截图和代码屏幕
我有 2 个 UITextField 调用同一个 UIDatePicker,如何让 UIDatePicker 知道在文本字段中设置所选日期时调用哪一个 UITextField? 最佳答案 您可以在这些
我需要显示一个带有 uidatepicker 的 View ..我尝试使用presentModalViewcontroller,但使用uidatepicker正确显示了我的新 View Control
iPhone UI 组件 UI DatePicker 不支持横向模式?仅在横向模式下它会抓取 2/3 的宽度。 如何让它用完全宽(480px)? 最佳答案 尝试手动重新/设置 UIDatePicker
我将 UIDatePicker 添加为 UITextField 的输入 View UIDatePicker *oBirth; NSDateFormatter *dateFormat; _edit
我在 UILabel 中有一个日期(例如“2010 年 12 月 14 日”)。我想将此日期设置为我的 UIDatepicker 的最小日期。我该如何做到这一点,请回复? 谢谢尼尚特 最佳答案 使用
我正在尝试构建一个日期选择器,其中今天为最小日期,2011 年 2 月 1 日为最大日期。 我已设置最短日期如下 [picker setMinimumDate: [NSDate date]]; 这工作
我在 iphone 日期选择器中遇到本地化问题。我希望日期选择器仅以英语显示日期,但现在它需要在 iphone 设置中设置为区域的语言。我尝试了各种没有用的方法像下面这样。 在 uidatepicke
我很茫然。我有一个 NSDate 传递给 UIDatePicker。当我设置为东部时区时,一切都很好。 当我设置为“中部”时,日期选择器显示的时间晚了 1 小时。 所以,如果我打开 NSLogs,这就
我想要一个 UIDatePicker,用户可以在其中选择月份和日期,但不能选择年份。我知道闰年多了一天,所以为了简单起见,我们把这一天扔掉。 是否有任何方法可以删除年份列或有 2 个带有月/日的卷轴,
有没有办法将 UIDatepicker 设置为分钟和秒与小时和分钟 编辑我最终添加了自己的 UIPicker 类,并自己创建了值和标签。 最佳答案 我认为 SDK 中没有任何内置方法可以执行此操作。尝
我在我的应用程序中创建了一个 UIDatePicker,并且还支持多种语言。我的 UIDatePicker 是在 Interface Builder 中创建的,并且我创建了一个单独的本地化 XIB,以
我在 View 中放置了一个 UIDatePicker,UIDatePicker 没有正确响应触摸 - 只有最右边的列/滚轮滚动 UIDatePicker 中的所有触摸。这与 View 中发生触摸的位
我有一个非常奇怪和令人困惑的问题。我找不到任何关于它的信息,它似乎是 Apple 的一个错误,但如果有人对如何解决这个问题有建议,那将会很有帮助。某些日期使用 UIDatePicker 将年份加 1,
在我的应用程序中,当用户单击 UITextField 时,应该会弹出 UIDatePicker。但是,它没有弹出。当我运行它时,它只显示“选择日期!”在行动表上,没有别的。 这是我的 ViewCont
我有一个 UIDatePicker,我希望将最小和最大日期范围设置为本周的星期四到星期三之间,我该如何设置?选择器日期是日期选择器,日期选择器文本字段是文本字段 pickerDate.datePick
我尝试设置最小和最大日期来限制用户的选择,但它不起作用: override func viewDidLoad() { let datePickerView : UIDatePi
func show(title: String, doneButtonTitle: String = "Done", cancelButtonTitle: String = "Cancel", def
我是一名优秀的程序员,十分优秀!