自定义UIMenuController
来源:互联网 发布:阿里云docker 编辑:程序博客网 时间:2024/06/08 07:18
长按复制,粘贴,这个大多数情况会在文本控件中起作用,我们也可以通过UIMenuController 自定义一些需要的操作,这里,介绍一种通用的方法,添加自定义的“举报”行为。
//长按举报class ReportLabel: UILabel { override init(frame: CGRect) { super.init(frame: frame) let longPress = UILongPressGestureRecognizer(target: self, action: #selector(ReportLabel.showMenu(_:))) self.addGestureRecognizer(longPress) } required init?(coder aDecoder: NSCoder) { fatalError("init(coder:) has not been implemented") } //需要重写以下两个方法 override func canBecomeFirstResponder() -> Bool { return true } override func canPerformAction(action: Selector, withSender sender: AnyObject?) -> Bool { if action == #selector(CommentCell.report(_:)) { return true } return false } //实现举报的方法 func report (sender: UIMenuController) { } //自定义UIMenuController func showMenu(gestureRecognizer: UILongPressGestureRecognizer) { self.becomeFirstResponder() let touchPoint = gestureRecognizer.locationInView(self) let touchArea = CGRect(origin: touchPoint, size: CGSize.zero) let reportMenuItem = UIMenuItem(title: "举报", action: #selector(ReportLabel.report(_:))) let customMenuController = UIMenuController.sharedMenuController() customMenuController.menuItems = [reportMenuItem] customMenuController.arrowDirection = .Default customMenuController.setMenuVisible(true, animated: true) customMenuController.setTargetRect(touchArea, inView: gestureRecognizer.view!) customMenuController.update() }}
0 0
- 自定义UIMenuController
- 自定义TableviewCell的UIMenuController
- 自定义剪切板,UIMenuController的使用
- UIMenuController
- UIMenuController
- UIMenuController
- UIMenuController
- UIMenuController
- UIMenuController
- UIMenuController
- UIMenuController
- UIMenuController
- UIMenuController
- 自定义UIMenuController(以UITabelViewCell为实例)
- swift-oc wkwebView使用自定义UIMenuController
- 在UIWebView中添加自定义编辑菜单 ,UIMenuController
- 自定义UIMenuController监听的方法必须放在控制器中
- iOS webview长按弹出框UIMenuController添加自定义功能
- win7下安装yii2高级模板全过程
- ORACLE10g的Scheduler简介
- js仿iPhone手机端alert,loading,正在加载...
- 控制iframe高度的万能方法
- ExpandableListAdapter详细介绍
- 自定义UIMenuController
- windows中执行maven命令行
- 我学习SVM的过程和资料
- 理解window和windowManager
- Okhttp的简单介绍和使用(一)
- HashMap如何根据Value排序?
- 如何打造一个让人愉快的框架
- Linux free 命令详解
- 随机森林