问题描述在 https://github.com/thermogl/TITokenField/commit/3541c875f127c6e07da7204728b3486b906602d0所述:
1、在 iOS7 下运行示例程序。
2、在textField中输入某些 names 中没有的值,例如"zz"。
3、点击 textView。
4、再次回到 textField。
5、重复3-4。
6、textField 中的 tokens 自动复制为多个。
zxcat 猜测:
在 iOS7 中,UITextView 和 UITextField 发生了变化。在某些项目中,他也发现 iOS7 中它们调用委托方法的次数会比iOS6 更多。例如 UITextView 会多出两个委托方法调用
-textViewDidChange: 和 -textViewDidChangeSelection 。这个问题很可能与此有关。
zxcat 经过调试之后,发现问题出自这里:
0x0009f23a in -[TITokenField addToken:] atPods/TITokenField/TITokenField.m:608 0x0009f0bd in -[TITokenFieldaddTokenWithTitle:representedObject:] at Pods/TITokenField/TITokenField.m:5920x0009ef55 in -[TITokenField addTokenWithTitle:] at Pods/TITokenField/TITokenField.m:5850x0009feac in __28-[TITokenField tokenizeText]_block_invoke atPods/TITokenField/TITokenField.m:685 0x032b405d in __53-[__NSArrayIenumerateObjectsWithOptions:usingBlock:]_block_invoke () 0x032b3f92 in-[__NSArrayI enumerateObjectsWithOptions:usingBlock:] () 0x032310a5 in-[NSArray enumerateObjectsUsingBlock:] () 0x0009fd07 in -[TITokenFieldtokenizeText] at Pods/TITokenField/TITokenField.m:684 0x0009e52a in-[TITokenField didEndEditing] at Pods/TITokenField/TITokenField.m:531
tokenfield 失去焦点时会调用-[TITokenField didEndEditing] ,并在其中执行 addToken 方法。但是 addToken 方法中有一句 [self becomeFirstResponder],导致方法递归调用。
因此解决的办法就很简单了,找到 addToken 方法,查找 if(shouldAdd){,然后注释掉 [self becomeFirstResponder]; 语句。
分享到:
相关推荐
可以用TextSwitcher添加动画效果避免textview内容生硬的切换,参考 http://write.blog.csdn.net/postedit/40508949
cell 中 放置textview 当编辑textview cell 高度随着变化。
本代码是在网上下载的代码基础上修改的,原代码是textview上下翻转效果,有3D效果,由于放在我的项目中不太适合,我把效果改成了上下移动切换效果,对代码进行了简单的封闭,一行代码调用就搞定,可直接设置滚动的...
DrawableTextView.zip,自定义控件 :drawable 跟随TextView居中 The drawable follows the text centered
ios应用源码之自动为textview添加编辑框 .
TextView添加placeholder属性
ios应用源码之上下有渐变效果的textview .
在textview或者textfield键盘上添加收回按钮
textview自适应高度
自定义的可以显示和设置placeholder的textview,使用非常简单。
maven { url "https://jitpack.io" } }}然后加implementation 'com.github.adityasonel:IosTextView:0.2.1'在您应用的build.gradle用法要显示常规样式的ios文本,只需使用IosTextViewRegular ,例如<...
textView自动换行
极少代码实现的社交类的文本输入框,可随着输入字数高度其高度变化。 有问题可以反馈给我。 GitHub地址https://github.com/zcDemo/AutoTextViewFrame
带有提示信息的textview,使用懒加载的思想,支持扩展、自定义,类似许多APP内部的意见反馈页面
不过,民间总有大神在,好歹解决了我的问题。下面给大家简单介绍下今天遇到的坑。坑的多了,经验也就多了,莫怕关于TextView设置字间距,有的人就说了,那不是so esay吗,直接一个属性搞定。他们说:可以利用 ...
在android 7.0上工作不好,不推荐。
android TextView解决自动换行问题,设置行数后超过用省略号
前两年IOS应用源码-主要是用于毕业设计学习的。
带有placeholder的textview,可以设置placeholder文字大小
带有占位符的TextView,可修改占位符颜色等属性,简单易用