iOS开发之TextField禁用粘贴、选择和全选功能
程序员文章站
2023-12-20 19:37:28
众所周知,textfield默认情况下,双击会出现“paste”等提示复制粘贴的快捷菜单,方便用户快速编辑文本,但很多情况下,我们并不希望用户能够粘贴文本【虽然这样不友好,...
众所周知,textfield默认情况下,双击会出现“paste”等提示复制粘贴的快捷菜单,方便用户快速编辑文本,但很多情况下,我们并不希望用户能够粘贴文本【虽然这样不友好,但万一产品经理要这么实现呢?】,那么我们可以这样做:
方法
自定义textfield
重写canperformaction方法
class customtextfield: uitextfield { /// 是否只是用于显示(禁用粘贴、选择和全选功能) var displayonly = false /// 禁用粘贴 var disablepaste = false /// 禁用选择 var disableselect = false /// 禁用全选 var disableselectall = false override func canperformaction(action: selector, withsender sender: anyobject?) -> bool { if displayonly { return false } if disablepaste && action == #selector(paste(_:)) { return false } if disableselect && action == #selector(select(_:)) { return false } if disableselectall && action == #selector(selectall(_:)) { return false } return super.canperformaction(action, withsender: sender) } }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。