运用UITextFieldDelegate完成,点击键盘的右下角的next,光标进入下一文本框,然后再点击Done,收回键盘_delegate 2 个编辑框-程序员宅基地

技术标签: uitextfield  

#import <UIKit/UIKit.h>

//控制器的.h

@interface MainViewController :UIViewController<UITextFieldDelegate>

{

    //设置两个文本框的属性

   UITextField * _field1;

   UITextField * _field2;

}


@end


//控制器的.m

@implementation MainViewController

-(void)dealloc

{

    [superdealloc];

}


- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil

{

   self = [superinitWithNibName:nibNameOrNilbundle:nibBundleOrNil];

   if (self) {

        // Custom initialization

       

    }

    return self;

}


- (void)viewDidLoad

{

    [superviewDidLoad];

// Do any additional setup after loading the view.

    

    //建立标签及其属性

   UILabel * label1 = [[UILabelalloc]initWithFrame:CGRectMake(20,100,100, 30)];

    [label1 setBackgroundColor:[UIColorwhiteColor]];

    [label1setText:@"用户名:"];

    [label1  setTextColor:[UIColormagentaColor]];

    [label1 setTextAlignment:NSTextAlignmentCenter];

    [label1.layersetBorderColor:[UIColorblueColor].CGColor];

    [label1.layersetBorderWidth:1.0f];

    [self.viewaddSubview:label1];

    [label1release];

    

    

   UILabel * label2 = [[UILabelalloc]initWithFrame:CGRectMake(20,150,100, 30)];

    [label2 setBackgroundColor:[UIColorwhiteColor]];

    [label2 setTextColor:[UIColormagentaColor]];

    [label2 setTextAlignment:NSTextAlignmentCenter];

    [label2.layersetBorderColor:[UIColorblueColor].CGColor];

    [label2.layersetBorderWidth:1.0f];

    [label2setText:@"密码:"];

    [self.viewaddSubview:label2];

    [label2release];

    

  

    //设置文本框及其属性

    _field1 = [[UITextFieldalloc]initWithFrame:CGRectMake(140,100,160, 30)];

    [_field1setBackgroundColor:[UIColorwhiteColor]];

    [_field1setPlaceholder:@"用户名/邮箱/账号"];

    [_field1setTextAlignment:NSTextAlignmentCenter];

    [_field1setBorderStyle:UITextBorderStyleRoundedRect];


    //改变键盘右下角的return的名字为next

    _field1.returnKeyType =UIReturnKeyNext;

    

   _field1.delegate =self;

    [self.viewaddSubview:_field1];

    [_field1release];

    

    

    _field2 = [[UITextFieldalloc]initWithFrame:CGRectMake(140,150,160, 30)];

    [_field2setBackgroundColor:[UIColorwhiteColor]];

    [_field2setBorderStyle:UITextBorderStyleRoundedRect];

    [_field2setSecureTextEntry:YES];

    

    //改变键盘右下角的next为done

    [_field2setReturnKeyType:UIReturnKeyDone];

    

   _field2.delegate =self;

    [self.viewaddSubview:_field2];

    [_field2release];

    

}




//点击nextreturn的时候,执行的方法

- (BOOL)textFieldShouldReturn:(UITextField *)textField

{

   if (textField==_field1) {

//当光标在第一个文本框时,设置第二个文本框为第一属性,此时点击next,光标会下移到第二个文本框

        [_field2becomeFirstResponder];

    }else{

//当光标在第二个文本框时,放弃第二个文本框为第一属性,此时点击done,键盘回收

        [_field2resignFirstResponder];

    }

//返回yes,表示点击return时,运行此代码

    return YES;

}



版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/u014534458/article/details/23602295

智能推荐

Android4.4 应用分析——修改Launcher3应用以适应单屏壁纸_android 单屏壁纸实现-程序员宅基地

文章浏览阅读2.4k次。Android4.4的墙纸信息存放在/data/system/users/0/目录下,WallpaperManagerService启动后,会生成如下两个文件在/data/system/users/0/目录下: static final String WALLPAPER = "wallpaper"; //设置的墙纸图片,一般为jpeg格式 static final Strin_android 单屏壁纸实现

MySQL数据实时增量同步到Redis_go redis mysql交互-程序员宅基地

文章浏览阅读1.1k次。工具简介go-mysql-transfer是一款MySQL数据库实时增量同步工具。 能够监听MySQL二进制日志(Binlog)的变动,将变更内容形成指定格式的消息,实时发送到接收端。从而在数据库和接收端之间形成一个高性能、低延迟的增量数据同步更新管道。特性1. 简单,不依赖其它组件,一键部署2. 集成多种接收端,如:Redis、MongoDB、Elasticsearch、RocketMQ、Kafka、RabbitMQ、HTTP API等,无需编写客户端,开箱即用3. 内置丰富的数据解..._go redis mysql交互

初识JAVA(二)-程序员宅基地

文章浏览阅读504次。一、面向过程与面向对象举例:我要去新疆面向过程:我开车,我挂挡,我踩油门,我过河北....面向对象:我命令车去新疆,车怎么去不关我事(信息封装在车这个类的内部,不用去了解车整个开动的过程)二、对象与类对象:通过属性和方法来分别对应事物所具有的静态属性和动态属性。类:同一类型的对象的一个抽象概念,类中定义了这一类对象所应该具有的静态和动态属性。类是名词类可以看成一类对象的模板,对象看成该类的一个具体实例类与类之间的关系:关联关系(弱)、继承关系(XX是一种XX...

java 反射创建对象并赋值_java使用反射创建并操作对象的方法-程序员宅基地

文章浏览阅读2k次。Class 对象可以获得该类里的方法(由 Method 对象表示)、构造器(由 Constructor 对象表示)、成员变量(由 Field 对象表示),这三个类都位于 java.lang.reflect 包下,并实现了 java.lang.reflect.Member 接口。程序可以通过对象来执行对应的方法,通过 Constructor 对象来调用对应的构造器创建实例,能通过 Field 对象直..._使用 java.lang.reflect.field创建列对象

Iconfont 使用及demo(单色、多色、渐变色) 案例demo-程序员宅基地

文章浏览阅读2.4k次,点赞3次,收藏3次。 IconFont 图标的3种引用方式 新版Iconfont-阿里巴巴矢量图标库支持三种引用方式: 1.unicode引用(原始)unicode是字体在网页端最原始的应用方式,特点是:兼容性最好,支持ie6+,及所有现代浏览器。支持按字体的方式去动态调整图标大小,颜色等等。但是因为是字体,所以不支持多色。只能使用平台里单色的图标,就算项目..._阿里图标如何用渐变色下载png

简述孪生随机网络(Siamese Network)_孪生网络两个输入之间的距离-程序员宅基地

文章浏览阅读57次。在训练过程中,通常使用一些损失函数,如三元损失函数(Triplet Loss)或对比损失函数(Contrastive Loss),来指导孪生网络学习适当的特征表示,以使相似样本的特征表示更加接近,不同样本的特征表示更加远离。孪生随机网络的设计使其在对比学习和度量学习等问题上表现出了优越性能,并且可以用于多种不同的应用场景,为处理具有比较性质的任务提供了一种有效的方法。3. 特征对比:两个子网络的特征表示被组合或连接,并通过一些操作进行对比,以计算输入样本之间的相似度或距离。_孪生网络两个输入之间的距离

随便推点

java 文字生成图片_java 将文字随机生成图片-程序员宅基地

文章浏览阅读1.2w次,点赞3次,收藏15次。直接上代码:import java.awt.*; import java.awt.image.*; import java.awt.font.*; import java.awt.geom.*; import java.io.File;import java.io.IOException;import java.io.OutputStream;import java._java 将文字随机生成图片

jq优化法则25条_jq 优化规则配置-程序员宅基地

文章浏览阅读699次。1. 从Google Code加载jQueryGoogle Code上已经托管了多种JavaScript类库,从Google Code上加载jQuery比直接从你的服务器加载更有优势。它节省了你服务器上的带宽,能够很快的从Google的内容分布网络(CDN)上加载JS类库。更重要的是,如果用户访问那些发布在Google Code上的站点后它会被缓存下来。这样做很有意义。有多少站点使用了没有_jq 优化规则配置

QT-屏蔽输入法_qt输入法移植后输入框关不掉-程序员宅基地

文章浏览阅读2.2k次。QT的输入控件 如QLineEdit,在设置输入密码时,我们希望屏蔽输入法,不让其切换输入法,只能输入英文和数字。QLineEdit lineEditPwd;lineEditPwd.setAttribute(Qt::WA_InputMethodEnabled, false);_qt输入法移植后输入框关不掉

GLES2.0中文API-glDrawElements_gldrawelements接口文档-程序员宅基地

文章浏览阅读1.9k次。名称glDrawElements - 从数组数据中渲染图元C规范void glDrawElements(GLenum mode, GLsizei count, GLenum type, const..._gldrawelements接口文档

mt7663 usb转wifi交叉编译_mt7663s芯片-程序员宅基地

文章浏览阅读268次。mt7663 USB转wifi 交叉编译及配置ap和sta模式_mt7663s芯片

Linux15 select,poll,epoll-程序员宅基地

文章浏览阅读102次。1.2.3.4.