ios添加自定义inputView

ios添加自定义inputView,第1张

概述无论我读了多少,我都坚持使用iOS中的一个概念,我似乎无法理解.我试图用自定义设计覆盖标准iOS数字键盘.当用户触摸UITextField时,我希望显示自定义inputView而不是标准数字键盘. 我为我的自定义inputView创建了一个单独的.h / .m / .xib ViewController类,名为“customInputViewController”现在,它只是一个黑暗的背景和一个按 无论我读了多少,我都坚持使用iOS中的一个概念,我似乎无法理解.我试图用自定义设计覆盖标准iOS数字键盘.当用户触摸UITextFIEld时,我希望显示自定义inputVIEw而不是标准数字键盘.

我为我的自定义inputVIEw创建了一个单独的.h / .m / .xib VIEwController类,名为“custominputVIEwController”现在,它只是一个黑暗的背景和一个按钮,当触摸UITextFIEld时,它会遮挡大约一半的屏幕(类似于数字垫,但它看起来不同).当我单击自定义inputVIEw中的一个按钮时,我的实现失败 – iOS会抛出EXC_BAD_ACCESS错误.

这是我在运行时加载.xib文件并将自定义inputVIEw附加到UITextFIEld对象的方法:

UIVIEwController *v = [[custominputVIEwController alloc] initWithNibname:@"custominputDesign" bundle:nil];myTextinput.inputVIEw = v.vIEw;

在自定义inputVIEw的.xib文件中,我将file的Owner设置为“custominputVIEwController”,然后创建了一个(IBAction)方法并将其附加到UIbutton.单击该按钮时,(IBAction)设置为发送NSLog(@“按钮单击”)消息.没什么特别的.它只是一个简单的样板实现,继续引发错误.

也许我这样做完全错了.有谁可以提供一个简单的例子?

解决方法 视图v.vIEw被保留,因为inputVIEw属性被定义为(reaDWrite,retain).但是,如果在单击输入按钮之前在某处释放custominputVIEwController v,则会出现崩溃(EXC_BAD_ACCESS)

您可以在主控制器中尝试:

- (IBAction) keyboardbuttonClicked{    NSLog(@"keyboard button Clicked");}- (voID) vIEwDIDLoad{    // do your stuff here ...    UIVIEw *v = [[UIVIEw alloc] initWithFrame:CGRectMake(0,320,100)]; // add autorelease if you don't use ARC    v.backgroundcolor = [UIcolor darkGraycolor];    UIbutton *b = [UIbutton buttonWithType:UIbuttonTypeCustom];    [b setTitle:@"Test button" forState:UIControlStatenormal];    [b addTarget:self action:@selector(keyboardbuttonClicked) forControlEvents:UIControlEventtouchUpInsIDe];    b.frame = CGRectMake(80,25,160,50);    [v addSubvIEw:b];    myTextinput.inputVIEw = v;}

应该工作正常……

总结

以上是内存溢出为你收集整理的ios添加自定义inputView全部内容,希望文章能够帮你解决ios添加自定义inputView所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1113608.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存