同样的需求,做Android客户端时在没有文本框时也可以通过inputMethodManager.toggleSoftInput(0, InputMethodManager.HIDE_NOT_ALWAYS);调出系统键盘。
但是,IOS中貌似没有这样的接口,所以可以采用“隐藏文本框”的方式,调出系统键盘,具体实现如下:
1、在ViewController.xib上放置一个ImageView和一个UITextField(代码中将其设置为隐藏),如下:
[img]
[/img]
2、ViewController.h如下:
#import <UIKit/UIKit.h>
@interface ViewController : UIViewController<UITextFieldDelegate>{
BOOL hasOpenKeyBoard;//是否打开键盘
}
@property(strong,nonatomic)IBOutlet UIImageView *imgView;
@property(strong,nonatomic)IBOutlet UITextField *textField;
-(IBAction)showKeyBoard:(id)sender;
@end
3、ViewController.m如下:
#import "ViewController.h"
@interface ViewController ()
@end
@implementation ViewController
@synthesize imgView;
@synthesize textField;
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
//隐藏文本框
textField.hidden = YES;
//设置代理
textField.delegate = self;
hasOpenKeyBoard = false;
}
- (void)viewDidUnload
{
[super viewDidUnload];
// Release any retained subviews of the main view.
}
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
return (interfaceOrientation != UIInterfaceOrientationPortraitUpsideDown);
}
-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{
NSLog(@"touchesBegan...");
//[imgView becomeFirstResponder];
if(!hasOpenKeyBoard){
[textField becomeFirstResponder];
}else{
[textField resignFirstResponder];
}
hasOpenKeyBoard=!hasOpenKeyBoard;
}
#pragma mark UITextFieldDelegate Methods
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string{
NSLog(@"string=%@",string);
return YES;
}
@end
方法shouldChangeCharactersInRange中可以监听到键盘输入。
4、效果如下:
[img]
[/img]
- 大小: 132.2 KB
- 大小: 160.4 KB
分享到:
相关推荐
照着书上敲入的代码,可执行。初学者请看,高手请回避。
可以轻松的处理网络图片加载的问题,进行异步的加载。
UIImageView-BetterFace, 一个UIImageView类别,让图片裁剪时显示出更好的效果 uiimageview-betterface一个UIImageView扩展,让图片切割的面显示更好v0.2 _stable中的最后一次更新: 添加UIImage BetterFace类别,...
UIImageView帧动画
大家经常做项目,应该会遇到一个界面的一行有多个UILaebl 多个UIImageView混的情况,尤其是UILaebl的文字长度是动态的情况,这时候就需要计算各种长度位置,比较麻烦,关键是,这种情况非常常见,所以我就想出来写这么一个...
这是iPhone之UIImageView入门的简易图片浏览程序,具体参考: http://blog.csdn.net/htttw/article/details/7874367
UIImageView、UIImageView基本用法、UIImageView详解,UIImageView常用方法
用两个 UIImageView 实现了无限轮播图
https://blog.csdn.net/qq_33608748/article/details/82495758
UIImageView的方法实现简单动画
JTImageLabel, 在iOS上,JTImageLabel同时保留UILabel和 UIImageView JTImageLabel JTImageLabel是一个简单的视图,它包含一个 UILabel 和一个 UIImageView,即使你更改了 UILabel的对齐方式。安装使用 CocoaPods...
IOS中利用UIImageView控件实现gif图片动画显示,借助ImageIO接口达到gif图片拆分效果,然后使用UIImageView动画接口播放一组图片达到动画效果; 最后将单个gif图片动画播放接口封装成UIView类,达到多个gif图片错开...
iOS开发,自己封装的一个类,用于开发中要做图片点击放大缩小的功能,导入头文件后直接使用!
一行代码都不需要写,添加一个UIImageView,只需改一下UIImageView的Custom Class,改为ImageBrowserImageView,即可实现轮播功能
12.2 在interface builder中创建第一个项目:图片和网页163 12.2.1 新建对象163 12.2.2 操作图形对象164 12.2.3 使用inspector窗口164 12.2.4 使用图片166 12.3 在interface builder中建立连接167 ...
核心代码,使用UIImageView实现触摸绘图, 比起使用数组实现要强很多, 使用数组会很费内存,高手请过。minixx新手学习资料保存 //监听触摸事件 -(void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event{ ...
利用Safari打开一个链接 10 利用UIWebView显示pdf文件、网页。。。 11 汉字转码 11 Checking for background support on earlier versions of iOS 11 Handing the Keyboard notifications 12 点击键盘的next按钮,在...
主要为大家详细介绍了iOS开发实现UIImageView的分类,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
/** * 输入Url * * return 处理好的原型图片 * */ - (void)setHeader:(NSString *)url;
通过给继承与 UIImageView 的类 CXGImageView 添加 CABasicAnimation 转动动画,实现播放器图片转动效果.