UITextField,UIDatePicker,UIPickerView

//

//  TextFieldViewController.swift

//  UIControlDemo

//

//  Created by   on 14/12/1.

//  Copyright (c) 2014年 马大哈. All rights reserved.

//

import UIKit

class TextFieldViewController: BaseViewController ,UITextFieldDelegate ,UIPickerViewDelegate ,UIPickerViewDataSource{

var wordTextField:UITextField? //文字

var dateTextField:UITextField? //时间

var dataTextField:UITextField? //普通picker(data)

var pickerArray = ["1","2","3","4","5","6","7"]

override func viewDidLoad() {

super.viewDidLoad()

self.title = "输入框+日期picker+数据picker"

wordTextField = UITextField(frame: CGRectMake(50, 70, 200, 40))

wordTextField?.backgroundColor = .clearColor()

wordTextField!.tag = 100

wordTextField?.delegate = self

wordTextField?.borderStyle = UITextBorderStyle.RoundedRect//UITextBorderStyle可以去掉wordTextField.borderStyle = .RoundedRect

wordTextField?.keyboardType = UIKeyboardType.Default

wordTextField?.returnKeyType = UIReturnKeyType.Done

wordTextField?.contentVerticalAlignment = UIControlContentVerticalAlignment.Center

wordTextField?.clearButtonMode = UITextFieldViewMode.WhileEditing

wordTextField?.secureTextEntry = false

wordTextField?.textColor = .blackColor()

wordTextField?.textAlignment = .Left

wordTextField?.placeholder = "键盘"

wordTextField?.font = UIFont.systemFontOfSize(15)

self.view.addSubview(wordTextField!)

dateTextField = UITextField(frame: CGRectMake(50, 120, 200, 40))

dateTextField?.backgroundColor = .clearColor()

dateTextField!.tag = 101

dateTextField?.delegate = self

dateTextField?.borderStyle = UITextBorderStyle.RoundedRect//UITextBorderStyle可以去掉wordTextField.borderStyle = .RoundedRect

dateTextField?.keyboardType = UIKeyboardType.Default

dateTextField?.returnKeyType = UIReturnKeyType.Done

dateTextField?.contentVerticalAlignment = UIControlContentVerticalAlignment.Center

dateTextField?.textColor = .blackColor()

dateTextField?.textAlignment = .Left

dateTextField?.placeholder = "日期picker"

dateTextField?.font = UIFont.systemFontOfSize(15)

self.view.addSubview(dateTextField!)

var dateFormatter = NSDateFormatter()

dateFormatter.dateFormat = "YYYY-MM-dd HH:mm:ss"

var datePicker = UIDatePicker()

datePicker.datePickerMode = UIDatePickerMode.Date

datePicker.timeZone = NSTimeZone(name: "GMT")

datePicker.maximumDate = dateFormatter.dateFromString("2014-12-21 12:12:12")//晚于这个时间,无法选择

datePicker.addTarget(self, action: "datePickerSelected:", forControlEvents: UIControlEvents.ValueChanged)

dateTextField!.inputView = datePicker

dataTextField = UITextField(frame: CGRectMake(50, 170, 200, 40))

dataTextField?.backgroundColor = .clearColor()

dataTextField!.tag = 102

dataTextField?.delegate = self

dataTextField?.borderStyle = UITextBorderStyle.RoundedRect//UITextBorderStyle可以去掉wordTextField.borderStyle = .RoundedRect

dataTextField?.keyboardType = UIKeyboardType.Default

dataTextField?.returnKeyType = UIReturnKeyType.Done

dataTextField?.contentVerticalAlignment = UIControlContentVerticalAlignment.Center

dataTextField?.textColor = .blackColor()

dataTextField?.textAlignment = .Left

dataTextField?.placeholder = "数据picker"

dataTextField?.font = UIFont.systemFontOfSize(15)

self.view.addSubview(dataTextField!)

var dataPicker = UIPickerView()

dataPicker.delegate   = self

dataPicker.dataSource = self

dataPicker.showsSelectionIndicator = true

dataTextField!.inputView = dataPicker

}

func datePickerSelected(datePicker:UIDatePicker){

var dateFormatter = NSDateFormatter()

dateFormatter.dateFormat = "YYYY-MM-dd HH:mm:ss"

let dateString = dateFormatter.stringFromDate(datePicker.date)

dateTextField!.text = dateString

}

func textFieldShouldBeginEditing(textField: UITextField) -> Bool {

return true

}

func textFieldShouldReturn(textField: UITextField) -> Bool {

if textField.tag==100{

textField.resignFirstResponder()

}

return false

}

func numberOfComponentsInPickerView(pickerView: UIPickerView) -> Int {

return 1

}

func pickerView(pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int {

return pickerArray.count

}

func pickerView(pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String! {

return pickerArray[row]

}

func pickerView(pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int) {

let pickerString = pickerArray[row]

dataTextField?.text = pickerArray[row]

println(pickerString)

}

override func touchesEnded(touches: NSSet, withEvent event: UIEvent) {

wordTextField?.resignFirstResponder()

dateTextField?.resignFirstResponder()

dataTextField?.resignFirstResponder()

}

override func didReceiveMemoryWarning() {

super.didReceiveMemoryWarning()

// Dispose of any resources that can be recreated.

}

}

时间: 2024-11-10 11:35:58

UITextField,UIDatePicker,UIPickerView的相关文章

UI基本控键UIView ,UILabel,UITextField ,UIButton,UIAlertView

视频(ffmpeg),即时通讯(需要服务器支持,需要socket通信协议)技术非常重要 .. 1.UIWindow --窗口类.. UIScreen   屏幕类.. UIColor   颜色类 view  --视图:代表屏幕上的一个举行区域 是所有控键的父类,,,基类,,,规定了一些通用的属性和方法 bringSubviewToFront    把指定的子视图移动到最前面    [superview bringSubviewToFront:redView] sendSubviewToBack  

Github上关于iOS的各种开源项目集合(强烈建议大家收藏,查看,总有一款你需要)

下拉刷新 EGOTableViewPullRefresh - 最早的下拉刷新控件. SVPullToRefresh - 下拉刷新控件. MJRefresh - 仅需一行代码就可以为UITableView或者CollectionView加上下拉刷新或者上拉刷新功能.可以自定义上下拉刷新的文字说明.具体使用看“使用方法”. (国人写) XHRefreshControl - XHRefreshControl 是一款高扩展性.低耦合度的下拉刷新.上提加载更多的组件.(国人写) CBStoreHouseR

object-c中的assign,retain,copy,atomic,nonatomic,readonly,readwrite以及strong,weak

assign:指定setter方法用简单的赋值,这是默认操作.你可以对标量类型(如int)使用这个属性.你可以想象一个float,它不是一个对象,所以它不能retain.copy.assign指定setter方法用简单的赋值,这是默认操作.你可以对标量类型(如int)使用这个属性.你可以想象一个float,它不是一个对象,所以它不能retain.copy. retain:指定retain应该在后面的对象上调用,前一个值发送一条release消息.你可以想象一个NSString实例,它是一个对象,

iOS 页面间几种传值方式(属性,代理,block,单例,通知)

iOS 页面间几种传值方式(属性,代理,block,单例,通知) 姜糖水 2015-05-03 52 阅读 iOS 移动开发 第二个视图控制器如何获取第一个视图控制器的部分信息 例如 :第二个界面中的lable显示第一个界面textField中的文本 这就需要用到属性传值.block传值 那么第一个视图控制器如何获的第二个视图控制器的部分信息 例如:第一个界面中的lable显示第二个界面textField中的文本 这就需要使用代理传值 页面间传值有八大传值方式,下面我们就简单介绍下页面间常用的五

Swift - 生成各种控件的工厂类(包含标签,按钮,输入框等)

在iOS开发中,页面里有时会大量的用到一些控件,如果要一个个单独创建再设置样式的话就显得很麻烦.我们可以创建一个生成各种控件的工厂类,这样在需要的时候调用下就可以了. 下面以一个自定义的工厂类为例,其中提供了文本标签,按钮,文本输入框,分段单选控件的生成,效果图如下: 工厂类:ViewFactory.swift 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34

oc,UITextFiled,怎么实现点击屏幕键盘自动隐藏和输入密码加密功能

ViewController.m #import "ViewController.h" @interface ViewController () @end @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; oc,UITextFiled,怎么实现点击屏幕键盘自动隐藏和输入密码加密功能oc,UITextFiled,怎么实现点击屏幕键盘自动隐藏和输入密码加密功能 UITextField * tf

一个功能,两个平台,三种语言 -(iOS,Swift,Android)App代码实现对比篇

-调研 话说移动互联网正值风起云涌期间,各路编程高手都是摩拳擦掌,何况企业公司都开始接受现实,走移动办公,信息云端,大数据处理的步伐,在这本该三足鼎立的时刻,微软显得有点步履蹒跚,导致移动端最值得进军的平台被iOS 和 Android 几乎瓜分,这不符合历史轨迹啊,希望 WP 能厚积薄发,重回当年PC时代的辉煌. -前序 这里就不再指点江山,直奔主题吧,来看看做同样一个功能,在iOS平台和Android平台都是具体如何实现的,代码是如何写的,这里有个分支就是iOS平台开发又分为Objective

WEB页面,WEB环境版本,数据库,整站备份脚本

#!/bin/bash # #WEB页面,WEB环境版本,数据库,整站备份脚本 #当发生某个原因导致整个服务器无法恢复时,利用上面备份的相关数据即可重做一台一样的服务器 date_a=`date +%Y%m%d-%H%M%S` mkdir -p /web_bak/${date_a}/conf &> /dev/null mkdir -p /web_bak/${date_a}/web &> /dev/null mkdir -p /web_bak/${date_a}/mysql &a

Java精品高级课,架构课,java8新特性,P2P金融项目,程序设计,功能设计,数据库设计,第三方支付,web安全,视频教程

36套精品Java架构师,高并发,高性能,高可用,分布式,集群,电商,缓存,性能调优,设计模式,项目实战,P2P金融项目,大型分布式电商实战视频教程 视频课程包含: 高级Java架构师包含:Spring boot.Spring  cloud.Dubbo.Elasticsearch,Redis.ActiveMQ.Nginx.Mycat.Spring.MongoDB.ZeroMQ.Git.Nosql.Jvm.Mecached.Netty.Nio.Mina.java8新特性,P2P金融项目,程序设计,