【发布时间】:2016-10-07 21:12:52
【问题描述】:
我有一个自定义选择器视图,效果很好,但有一个问题。您可以再次单击该按钮,然后选择器视图将被关闭。但是当它关闭时,取消按钮中的文本变为空白并且不保持不变(“选择”是一个打开选择器视图的按钮,当您从选择器视图中选择某些内容以反映您选择的内容时,它的文本会发生变化。我是什么想要发生的是,如果您再次单击选择按钮(而不是选择器视图),则取消按钮中的文本不会更改并变为空白。
var pickValue:AnyObject? {
didSet{
if let pickValue = pickValue{
Select.setTitle("\(pickValue)", for: UIControlState())
}else{
Select.setTitle("Select", for: UIControlState())
}
}
}
@IBAction func Show(_ sender: AnyObject) {
let pickercontrol = LCTableViewPickerControl(
frame: CGRect(x: 0, y: self.view!.frame.size.height + 150, width: view.bounds.size.width - 50, height: 150),
title: "Please pick an item",
value: pickValue,
items: ["minute", "hour", "day", "month", "year"],
offset: CGPoint(x: 0, y: 0))
pickercontrol?.tag = 1
view.addSubview(pickercontrol!)
pickercontrol?.show(in: view) { [weak self](sender, item) in
guard let view = sender as? LCTableViewPickerControl else{
return
}
view.dismiss()
self?.pickValue = item as AnyObject?
}
}
The image when the picker view is initialized and your able to pick a value
【问题讨论】:
-
以后一定要使用“code sample”格式而不是“code sn-p”。代码 sn-p 用于设置简短的单行代码或函数名称。代码示例格式(通过缩进四个空格或突出显示并单击格式栏中的工具来完成)适用于长代码并添加滚动条等,并使较大的代码部分更具可读性。
-
我做到了。你认为你能解决它吗
-
不幸的是,我对 swift 一无所知。该网站的质量经过同行评审,我只是在帮助您的帖子看起来更吸引其他人的帮助。希望有人能找到答案。干杯!