Swift - 文本输入框(UITextField)的用法

1,文本框的创建,有如下几个样式:

UITextBorderStyle.None:无边框
UITextBorderStyle.Line:直线边框
UITextBorderStyle.RoundedRect:圆角矩形边框
UITextBorderStyle.Bezel:边线+阴影
1
2
3
4
var textField = UITextField(frame: CGRectMake(10,160,200,30))
//设置边框样式为圆角矩形
textField.borderStyle = UITextBorderStyle.RoundedRect
self.view.addSubview(textField)

2,文本框提示文字

1
textField.placeholder="请输入用户名"

3,文字大小超过文本框长度时自动缩小字号,而不是隐藏显示省略号

1
2
textField.adjustsFontSizeToFitWidth=true  //当文字超出文本框宽度时,自动调整文字大小
textField.minimumFontSize=14  //最小可缩小的字号

4,水平/垂直对齐方式

1
2
3
4
5
6
7
8
9
/** 水平对齐 **/
textField.textAlignment = .Right //水平右对齐
textField.textAlignment = .Center //水平居中对齐
textField.textAlignment = .Left //水平左对齐
 
/** 垂直对齐 **/
textField.contentVerticalAlignment = .Top  //垂直向上对齐
textField.contentVerticalAlignment = .Center  //垂直居中对齐
textField.contentVerticalAlignment = .Bottom  //垂直向下对齐

5,背景图片设置

1
textField.background=UIImage(named:"background1");

6,清除按钮(输入框内右侧小叉)

1
2
3
textField.clearButtonMode=UITextFieldViewMode.WhileEditing  //编辑时出现清除按钮
textField.clearButtonMode=UITextFieldViewMode.UnlessEditing  //编辑时不出现,编辑后才出现清除按钮
textField.clearButtonMode=UITextFieldViewMode.Always  //一直显示清除按钮

7,设置文本框关联的键盘类型
Default:系统默认的虚拟键盘
ASCII Capable:显示英文字母的虚拟键盘
Numbers and Punctuation:显示数字和标点的虚拟键盘
URL:显示便于输入数字的虚拟键盘
Number Pad:显示便于输入数字的虚拟键盘
Phone Pad:显示便于拨号呼叫的虚拟键盘
Name Phone Pad:显示便于聊天拨号的虚拟键盘
Email Address:显示便于输入Email的虚拟键盘
Decimal Pad:显示用于输入数字和小数点的虚拟键盘
Twitter:显示方便些Twitter的虚拟键盘
Web Search:显示便于在网页上书写的虚拟键盘

1
textField.keyboardType = UIKeyboardType.NumberPad


8,使文本框在界面打开时就获取焦点,并弹出输入键盘

1
textField.becomeFirstResponder()

9,使文本框失去焦点,并收回键盘

1
textField.resignfirstresponder()

10,设置键盘return键的样式

1
2
3
4
5
6
textField.returnKeyType = UIReturnKeyType.Done //表示完成输入
textField.returnKeyType = UIReturnKeyType.Go //表示完成输入,同时会跳到另一页
textField.returnKeyType = UIReturnKeyType.Search //表示搜索
textField.returnKeyType = UIReturnKeyType.Join //表示注册用户或添加数据
textField.returnKeyType = UIReturnKeyType.Next //表示继续下一步
textField.returnKeyType = UIReturnKeyType.Send //表示发送

11,键盘return键的响应

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
class ViewController: UIViewController,UITextFieldDelegate {
 
    override func viewDidLoad() {
        super.viewDidLoad()
 
        var textField = UITextField(frame: CGRectMake(10,160,200,30))
        //设置边框样式为圆角矩形
        textField.borderStyle = UITextBorderStyle.RoundedRect
        textField.returnKeyType = UIReturnKeyType.Done      
        textField.delegate=self
        self.view.addSubview(textField)
    }
     
    func textFieldShouldReturn(textField:UITextField) -> Bool
    {
        //收起键盘
        textField.resignFirstResponder()
        //打印出文本框中的值
        println(textField.text)
        return true;
    }
}

转载于:https://www.cnblogs.com/Free-Thinker/p/4834035.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/290390.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

WPF 基础控件之 DatePicker 样式

此群已满340500857 ,请加新群458041663由于微信群人数太多入群请添加小编微信号yanjinhuawechat 或 W_Feng_aiQ 邀请入群需备注WPF开发者 PS:有更好的方式欢迎推荐。支持NugetInstall-Package WPFDevelopers.Minimal -Version 3.2.001—代码如下一、创建…

C和指针之数组编程练习3(判断矩阵是否为单位矩阵)

1、题目 3.单位矩阵就是一个正方形矩阵,它除了主对角线元素值为1以外,其余元素的值均为0,例如: *1 0 0 *0 1 0 *0 0 1 *就是一个33单位矩阵,编写一个名叫identity_matrix的函数,它接受一个1010整型矩阵为参数 *成功返回1,失败返回1 4、修改前一个问题中的identity_…

stagefright框架(四)-Video Buffer传输流程

這篇文章將介紹Stagefright中是如何和OMX video decoder传送buffer。 (1) OMXCodec會在一開始的時候透過read函式來傳送未解碼的data給decoder,並且要求decoder將解碼後的data傳回來 status_t OMXCodec::read(...){ if (mInitialBufferSubmit) { mInitialBuffe…

微信支付四大支付模式分别有哪些区别?

微信支付是集成在微信客户端的支付功能,用户可以通过手机完成快速的支付流程。微信支付已为百货、餐厅、便利店、酒店、快递、景区、医院、售货机等提供了支付与营销的全方位支持。 目前微信支付已实现刷卡支付、扫码支付、公众号支付、APP支付,并提供企…

利用Deep Reinforcement Learning训练王者荣耀超强AI

Mastering Complex Control in MOBA Games with Deep Reinforcement Learning(一)知识背景(二)系统架构(三)算法结构3.1 Target Attention3.2 利用LSTM学习技能连招释放3.3 Decoupling of Control Dependen…

Html常用标签元素

常用HTML标签元素结合及简介 <html></html> 创建一个HTML文档 <head></head> 设置文档标题和其它在网页中不显示的信息 <title></title> 设置文档的标题 <h1></h1> 最大的标题 <pre></pre> 预先格式化文本…

C和指针之编译出现warning: implicit declaration of function ‘matrix_multiply‘ is invalid in C99问题

1、问题 在我的mac上编译一个c文件&#xff0c;出现下面错误2、原因和解决办法 是因为我用vim的时候&#xff0c;把函数名少写了一个字符导致&#xff0c;把这个函数名改正就行了。

5. 堪比JMeter的.Net压测工具 - Crank 实战篇 - 接口以及场景压测

1. 前言通过之前的学习&#xff0c;我们已经掌握了crank的配置以及对应http基准工具bombardier、wrk、wrk2的用法&#xff0c;本篇文章介绍一下如何将其用于实战&#xff0c;在实际的项目中我们如何使用crank来完成压测任务。2. 项目背景目前有一个项目&#xff0c;我们希望通过…

Destroying the bus stations

Destroying the bus stationsTime Limit: 1000MS Memory Limit: 65536KTotal Submissions: 1832 Accepted: 595Description Gabiluso is one of the greatest spies in his country. Now hes trying to complete an “impossible” mission - to make it slow for the army of …

Pytorch快速入门笔记

Pytorch 入门笔记1. Pytorch下载与安装2. Pytorch的使用教程2.1 Pytorch设计理念及其基本操作2.2 使用torch.nn搭建神经网络2.3 创建属于自己的Dataset和DataLoader2.3.1 编写Dataset类2.3.2 编写Transform类2.3.3 将Transform融合到Dataset中去2.3.4 编写DataLoader类2.4 使用…

详解用65行javascript代码做Flappy Bird

点击查看特效JavaScript做Flappy Bird游戏&#xff0c;代码仅仅65行资源包括&#xff1a;javascript源码&#xff1a;phaser.min.js&#xff1b;main.js&#xff1b;index.html素材&#xff1a;两张图片&#xff01;素材PS&#xff1a;素材源码下载来我的前端群570946165&#…

模板使用的一个坑

html模板相信很多人都用过&#xff0c;类似angular中的指令&#xff0c;通过模板对于html中很多相似的片段完全可以借助for循环或者ng-repeat指令来生成&#xff0c;大大提高效率。 最近在使用模板时候碰到一个坑&#xff0c;分享出来&#xff0c;希望对后来者有所帮助。 重构之…

C和指针之数组编程练习5 (矩阵相乘)

1、问题 5.如果A是个x行y列的矩阵,B是个y行z列的矩阵,把A和B相乘,其结果将是另一个x行z列的矩阵C。这个矩阵的每个元素是由下面的公式决定的: 例如: 结果矩阵中14这个值是通过2-2加上-6-3得到的,编写一个函数,用于执行两个矩阵的乘法。函数的原型如下: void matrix_mul…

我的技术回顾因ABP框架触发DevOps云原生之路-2020年

我的技术回顾&#xff1a;2015年&#xff1a;我的技术回顾那些与ABP框架有关的故事-2015年2016年&#xff1a;从ABP框架国内社区发展回顾.NET技术变迁-2016年2017年&#xff1a;我的技术回顾那些与ABP框架有关的故事-2017年2018年&#xff1a;我的技术回顾那些与ABP框架有关的故…

半身头像

画的好丑。。。继续加油 转载于:https://www.cnblogs.com/manlurensheng/p/4102631.html

Swift - 操作SQLite数据库(引用SQLite3库)

SQLite轻量级数据库在移动应用中使用非常普遍&#xff0c;但是目前的库是C编写的&#xff0c;为了方便使用&#xff0c;对SQLite相关的操作用Swift进行了封装。这个封装代码使用了一个开源项目SQLiteDB&#xff0c;地址是&#xff1a;https://github.com/fahimf/sqlitedb 重要事…

最长单调递增子序列

1.问题描述&#xff1a;求一个正整数序列的最长单调自增子序列&#xff0c;子序列不要求是连续的。例如Input&#xff1a;55 2 4 3 1Output&#xff1a;22. 算法复杂度是O(N*N)f[i]是以a[i]为最大值的子序列&#xff0c;那么f[]的最大值就是要的结果。int f[],a[];f[0] 1;for(…

如何在Clion中使用C++调用Python代码

在很多时候&#xff0c;我们需要在一个c工程项目中调用部分Python代码&#xff0c;这就需要我们实现Python和C之间的交互。交互方式有两种&#xff1a;1. 依靠 TCP 建立的网络通信交互&#xff1b;2. 嵌入式混合语言编程&#xff08;Embedding Code&#xff09;。这里主要介绍后…

C和指针之数组编程练习8(8皇后问题)

1、问题 *在88格的国际象棋上摆放八个皇后,使其不能互相攻击 *即任意两个皇后都不能处于同一行、同一列或同一斜线上, *问有多少种摆法,并把所有合法的二维数组打印出来 2、代码实现 #include <stdio.h> #include <stdlib.h>/***在88格的国际象棋上摆放…

.NET6之MiniAPI(二十四):用Polly重试

为了保障系统的稳定和安全&#xff0c;在调用三方服务时&#xff0c;可以增加重试和熔断。重试是调用一次失败后再试几试&#xff0c;避免下游服务一次闪断&#xff0c;就把整个链路终止&#xff1b;熔断是为了防止太多的次数的无效访问&#xff0c;导致系统不可知异常。Polly是…