前提:起码要有两个视图控制器。

注意事项:
设置跳转的动画效果
UITextField输入时,虚拟键盘的位置设置(整体布局向上移动,虚拟键盘的自动隐藏)

实现的功能:
A:在第一个页面跳转到第二个页面,然后第二个页面点击按钮,进行返回
B:在第一个页面有一个text控件,点击一个按钮,传递到第二个页面,然后显示到第二个
页面的label上面:

效果展示:

步骤:

1.新建两个类,然后勾选xib,在AppDelegate的实现文件把其中的一个视图加载进去

//新建一个视图控制器MainViewController *myView = [[MainViewController alloc]init];//让新建的视图控制器加入根类的视图中self.window.rootViewController = myView;


2.构建布局,定义方法:
头文件代码如下:

#import <UIKit/UIKit.h>
#import "DetailViewController.h"
@interface MainViewController : UIViewController<UITextFieldDelegate>
{//把2页面声明为成员变量,便于本类的多个方法的调用。DetailViewController *dail;
}
//点击是页面跳转
- (IBAction)enter:(id)sender;
//点击时把输入的文字传递过去,在2页面显示
- (IBAction)Image:(id)sender;
//文本控件
@property (strong, nonatomic) IBOutlet UITextField *Sent;@end

3.在实现文件中,方法的实现代码如下:

- (IBAction)enter:(id)sender {//0,默认。 1. 翻转 2.淡化  3.翻页dail.modalTransitionStyle = 2;//跳转操作[self presentViewController:dail animated:YES completion:nil];}- (IBAction)Image:(id)sender {//跳转并发送文本[self presentViewController:dail animated:YES completion:nil];dail.Get.text = self.Sent.text;
}

4.2页面的头文件代码如下:

#import <UIKit/UIKit.h>@interface DetailViewController : UIViewController
//点击后,返回
- (IBAction)Return:(id)sender;
//用来接受传递过来的文本:
@property (strong, nonatomic) IBOutlet UILabel *Get;@end2页面的实现文件按代码如下:(部分方法实现代码)- (IBAction)Return:(id)sender {// 点击后进行返回操作[self dismissViewControllerAnimated:YES completion:nil];
}

解决问题1:
如果文本框在一个页面的中间,我们输入的时候,虚拟键盘就把文本框给掩盖住了。我们可以
把界面集体上移,

前提:首先我们要遵守UITextFieldDelegate的协议,调用里面的成员方法:
代码实现:

- (void)textFieldDidBeginEditing:(UITextField *)textField{//加一个动画的效果:隔一秒钟让view上移,因为键盘的出现是上移的,如果你的view之间蹦到//指定的坐标,中间会有一个空缺;[UIView animateWithDuration:1 animations:^{//让页面的Y坐标变为-260.就做了向上移动操作。self.view.frame = CGRectMake(0, -260, self.view.frame.size.width, self.view.frame.size.height);}];}


解决问题2:

如果我们输入完了,需要点击按钮进行跳转,发现现在的按钮已经被虚拟键盘掩盖了
怎么样才能鼠标点击空白处,虚拟键盘就会自动的隐藏呢:这时候就要重写uiView的方法:
以让我们输入结束的时候,让输入框取消第一响应者。从而让键盘隐藏:

前提:
设置TextField的代理对象为当前类对象:
代码如下:

- (void)viewDidLoad
{[super viewDidLoad];dail = [[DetailViewController alloc]init];//设置UITextField的代理为当前类对象self.Sent.delegate = self;// Do any additional setup after loading the view from its nib.
}

虚拟键盘自动隐藏的代码如下:

代码如下:

//触摸时间:重写系统的方法:点击空白处,虚拟键盘消失
//让整个文本输入框取消第一响应者,从而让所有控件的键盘隐藏
-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{//NSLog(@"touch");[self.Sent resignFirstResponder];
}


介绍完毕:

页面跳转 和虚拟键盘的自动隐藏相关推荐

  1. HTML5页面跳转等待,页面跳转--等待5秒钟后自动跳转到某个页面

    这部分可以结合上面的jsp登录,当登录成功后,提示登录成功,然后等待几秒钟,然后跳转到主界面 登陆成功,欢迎光临! 5秒钟后自动跳转,如果不跳转,请点击下面链接 // Place this in th ...

  2. 重新想象 Windows 8 Store Apps (49) - 输入: 获取输入设备信息, 虚拟键盘, Tab 导航, Pointer, Tap, Drag, Drop...

    重新想象 Windows 8 Store Apps (49) - 输入: 获取输入设备信息, 虚拟键盘, Tab 导航, Pointer, Tap, Drag, Drop 原文:重新想象 Window ...

  3. 弹出Windows10的虚拟键盘总结

    由于公司的项目软件一直都在Windows的平板电脑上运行,所以当用户点击了输入框之类的控件时,就要在代码中主动让Windows的虚拟键盘启动并显示出来.这个功能分了几步的开发过程,现在来总结一下. 项 ...

  4. Delphi D10 StringGrid安卓下虚拟键盘的使用

    需求 一个项目,在安卓下使用Grid对数据的处理更为直观与方便,所以选择了StringGrid,起初绑定数据,设置数据内容的增.删.保存等非常方便,不用一行代码搞定.问题出在1.怎么让某个单元格输入完 ...

  5. Qt5.13.0虚拟键盘 使用文档说明及函数说明 (一)构建 build

    首先之前的工作都是为了想验证虚拟键盘的使用,才有了之前编译x11 .arm等qt的步骤. 在到这之前的构建环境,我说认真的,真的烦的要死,每次构建用的时间又多,配置完了编译会出一大堆error,加上公 ...

  6. IOS实现点击软键盘的Next/Return按钮或者空白处后自动隐藏键盘

    在开发IOS过程中,经常需要用到TextField控件.光标一旦定位到该控件,软键盘就会自动开启,用户能够在其中通过软键盘进行输入.但是,若不对软键盘进行其他操作,它是不会自动关闭的.这样就很有可能降 ...

  7. html5 5s自动返回键,关于HTML5页面与手机虚拟键盘的回车的处理

    要支持手机虚拟键盘的回车键能触发当前页面的提交效果,需要满足一下几点 一,存在form元素以及submit类型的input子元素 二,需要将form的onsubmit属性绑定包含返回布尔值的方法 关于 ...

  8. Android按键响应的几种方式、安卓页面的跳转、页面跳转传参、页面自动跳转、Activity(页面)的生命周期

    按键响应的第一种方式: 在XML文件里面设置按键的onClick绑定函数.就像下面的代码,给Button设置onClick属性,在按键被按下的时候,会调用java文件里面的onClickbtton1这 ...

  9. html页面跳转IP,JS获取访客IP进行自动跳转

    因业务需要进行地区判断跳转指定站点,下面是我个人实现的办法,分享给大家,仅供参考,切勿做非法用途 第一步,获取IP并判断归属地 直接使用搜狐的IP库查询接口 返回的地址是: var returnCit ...

最新文章

  1. hdu5701-中位数计数
  2. 卡常神器——register 与 快速读入输出
  3. dev-c++官网位置和源码/库位置
  4. windows10环境下安装Anaconda环境
  5. 良好的代码编写风格(二十五条)
  6. Pensieve:AI带来的更流畅的高质量观看体验
  7. 评分系统 java_C自动评分系统
  8. 斑马打印机怎么打印二维码_万能打印机厂家是怎么改良打印机的?
  9. java编写一个程序_计算已知长和宽的长方形的周长,请教一下大佬们,我们java留了一个作业,编写程序,定义一个接口Comput,声明计算周长和面积的方法...
  10. GitHub 简单教程
  11. NIO中的ByteBuffer读取中文错误的解决方法:MalformedInputException
  12. 通达信 c语言,通达信if语句用法,通达信公式编写
  13. android studio 汉化包 美化包
  14. 微信小程序设置底部导航栏
  15. 2020-12-30
  16. Could not import the lzma module
  17. Ruby On Rails 4 hello world,Ruby On Rails上手
  18. 集成声网(Agora)SDK踩坑集锦系列
  19. 简单易用,基于js或vue项目实现一次批量文件下载功能
  20. 看看人家那物联网系统,那叫一个优雅……

热门文章

  1. 腾讯 Tars 基础框架手动搭建——填掉官方 Guide 的坑
  2. 微信能修图!美图秀秀们惊恐之后该怎么做
  3. PHP统计文件夹中的图片数量
  4. 【计算机网络】【应用层概述】
  5. SAP MM 工厂级别的批次管理?
  6. 《C# 6.0 本质论》 - 学习笔记
  7. IT培训毕业之后,选什么城市比较好?
  8. STM32F4单片机读取AT24c02
  9. 定时器灵魂拷问? 最终loop等于几?
  10. 第七届蓝桥软件组C/C++B组第一题一步之遥