swift textFiled 获取输入值失败?
//
// ViewController.swift
// LoverFinder
//
// Created by 林炳强 on 16/3/6.
// Copyright © 2016年 林炳强. All rights reserved.
//
import UIKit
class ViewController: UIViewController , UITextFieldDelegate {
@IBOutlet weak var name: UITextField!
@IBOutlet weak var gender: UISegmentedControl!
@IBOutlet weak var birthDay: UIDatePicker!
@IBOutlet weak var height: UISlider!
@IBOutlet weak var heightNumber: UILabel!
@IBOutlet weak var hasProperty: UISwitch!
@IBOutlet weak var result: UITextView!
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
name.delegate = self
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
@IBAction func okTapped(sender: AnyObject) {
//单击按钮之后显示所有内容
//sex
let genderText = gender.selectedSegmentIndex==0 ? "高富帅":"白富美"
let grogran = NSCalendar(calendarIdentifier: NSCalendarIdentifierGregorian)
let dateNow = NSDate()
let component = grogran?.components(NSCalendarUnit.YearForWeekOfYear, fromDate: birthDay.date, toDate: dateNow, options: NSCalendarOptions(rawValue: 0))
let age = component!.year
let hasPropertyText = hasProperty.on ? "有房" : "没房"
result.text = "\(name.text),\(age)岁, \(genderText),身高\(heightNumber.text),\(hasPropertyText),求交往"
}
@IBAction func heightChanged(sender: AnyObject) {
//slider 与label绑定
let slider = sender as! UISlider
let i = Int(slider.value)
slider.value = Float(i)
heightNumber.text = "\(i)厘米"
}
//UITextFiledD
func textFieldShouldReturn(textField: UITextField) -> Bool{
textField.resignFirstResponder()
return true
}
}
有多余的 Optional 这是什么原因啊?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
这事Xcode7版本新加的你需要解包:name.text和heightNumber.text后➕!
本来想写一些,不过挺烦的,你还是去 Google
可选值
或者Swift Optional
吧,你连 Swift 的基本都不知道,也不知道你的学习路线是如何的。提醒一下:不要按照 @Thenameofmeisjun 的话,简单的去使用
!
语法糖强制解包。Swift 提供很多更安全的做法去解包,我就不一一赘述了。