2019独角兽企业重金招聘Python工程师标准>>>

//
//  ZsyTextField.m
//  UIMenuController使用简介
//
//  Created by Zsy on 15/3/2.
//  Copyright © 2017年 Zsy. All rights reserved.
//#import "ZsyTextField.h"@implementation ZsyTextField- (void)awakeFromNib {[self setUp];
}- (instancetype)initWithFrame:(CGRect)frame {if (self = [super initWithFrame:frame]) {[self setUp];}return self;
}- (void)setUp {self.userInteractionEnabled = YES;[self addGestureRecognizer:[[UILongPressGestureRecognizer alloc]initWithTarget:self action:@selector(longPress)]];
}- (void)longPress {//1.设置label为第一响应者//通过设置第一响应者UIMenuController可以获得支持哪些操作的信息,操作怎么处理[self becomeFirstResponder];//2.设置UIMenuControllerUIMenuController * menu = [UIMenuController sharedMenuController];//当长按label的时候,这个方法会不断调用,menu就会出现一闪一闪不断显示,需要在此处进行判断if (menu.isMenuVisible) {return;}UIMenuItem *item1 = [[UIMenuItem alloc] initWithTitle:@"剪切" action:@selector(myCut:)];UIMenuItem *item2 = [[UIMenuItem alloc] initWithTitle:@"粘贴" action:@selector(myPasete:)];UIMenuItem *item3 = [[UIMenuItem alloc] initWithTitle:@"清空" action:@selector(myEmpty:)];menu.menuItems = @[item1, item2, item3];[menu setTargetRect:self.bounds inView:self];[menu setMenuVisible:YES animated:YES];
}- (BOOL)canBecomeFirstResponder {return YES;
}- (BOOL)canPerformAction:(SEL)action withSender:(id)sender {if (action == @selector(myCut:) || action == @selector(myPasete:) || action == @selector(myEmpty:)) {return YES;}return NO;
}- (void)myCut:(UIMenuController *)menu {[self copy:menu];self.text = nil;
}- (void)cut:(UIMenuController *)menu {[self copy:menu];self.text = nil;
}- (void)copy:(UIMenuController *)menu {if (!self.text) {return;}UIPasteboard *paste = [UIPasteboard generalPasteboard];paste.string = self.text;
}- (void)myPasete:(UIMenuController *)menu {UIPasteboard *paste = [UIPasteboard generalPasteboard];self.text = paste.string;
}- (void)myEmpty:(UIMenuController *)menu {self.text = nil;
}@end

转载于:https://my.oschina.net/zsyzone/blog/850189

UIMenuController的简单使用相关推荐

  1. 在docker上安装部署tomcat项目 超简单,拿来主义

    在docker中部署tomcat,非常简单,而且省去了手动安装jdk等步骤,只需要将war包复制在容器tomcat实例中的webapps下面即可.以下将详细讲解流程: 在windows中打好包以后用w ...

  2. Linux下tomcat的安装与卸载以及配置(超简单)

    无敌简单的几步 1.安装 //首先你需要下载好tomcat包 sudo tar -xvzf apache-tomcat-7.0.85.tar.gz(这里是包名) -C 你要放的位置 2.卸载 rm - ...

  3. Docker安装Apache与运行简单的web服务——httpd helloworld

    Docker运行简单的web服务--httpd helloworld目录[阅读时间:约5分钟] 一.Docker简介 二.Docker的安装与配置[CentOS环境] 三.Docker运行简单的web ...

  4. Docker的安装、镜像源更换与简单应用

    Docker的安装.镜像源更换与简单应用[阅读时间:约20分钟] 一.概述 二.系统环境&项目介绍 1.系统环境 2.项目的任务要求 三.Docker的安装 四.Docker的简单应用 1. ...

  5. 基于Golang的简单web服务程序开发——CloudGo

    基于Golang的简单web服务程序开发--CloudGo[阅读时间:约10分钟] 一.概述 二.系统环境&项目介绍 1.系统环境 2.项目的任务要求 (1)基本要求 (2)扩展要求 三.具体 ...

  6. 简单图文配置golang+vscode【win10/centos7+golang helloworld+解决install failed等情况】

    博客目录(阅读时间:10分钟) 一.win10 0.系统环境 1. win10配置golang环境 ①下载相关软件 ②创建gowork工作空间 ③配置环境变量(GOPATH+PATH) ④验证环境配置 ...

  7. 简单介绍互联网领域选择与营销方法

    在我看来,互联网领域的选择是"安家",而营销方法的不同则表现了"定家"的方式多种多样,只有选对了,"家"才得以"安定". ...

  8. JAVA用最简单的方法来构建一个高可用的服务端,提升系统可用性

    一.什么是提升系统的高可用性 JAVA服务端,顾名思义就是23体验网为用户提供服务的.停工时间,就是不能向用户提供服务的时间.高可用,就是系统具有高度可用性,尽量减少停工时间.如何用最简单的方法来搭建 ...

  9. java发送简单邮件_Java程序实现发送简单文本邮件

    /** * Java程序实现发送简单文本邮件 * * @author Administrator * */ public class SendTextMail { // 定义发件人地址 public  ...

最新文章

  1. GPU自动调度卷积层
  2. ubuntu下安装ftp服务器
  3. 微软摊开 AI 高分作业,在线求抄
  4. Python 程序扩展名(py, pyc, pyw, pyo, pyd) 及发布程序时的选择
  5. 服务器用户编码是什么,涨知识:英特尔服务器CPU编号是啥意思?
  6. 37.cgi网页交互
  7. 优秀编程网站收录集锦
  8. python心得-基本概念2
  9. linux检查防火墙是否阻挡端口,浅析linux查看防火墙状态和对外开放的端口状态...
  10. 使用JS清空fileupload 控件值
  11. 【Spark Summit East 2017】可扩展性机器学习的特征哈希
  12. 百练 04 简单的整数划分问题
  13. vue-cli本地的一个websocket
  14. mysqll索引实验
  15. 教你将视频作为背景添加到另一段视频中
  16. 信号与系统实验六 傅里叶分析方法的应用
  17. python分析《水浒传》小说,对文本数据内容清洗、分词、统计、词云可视化展示
  18. 怎样开发微信小程序(最初的页面)
  19. 一阶微分方程的物理意义_微分方程和积分方程有哪些典型的物理意义?实际中哪个更常用?...
  20. 从“网易邮箱被黑”看网页游戏账号安全

热门文章

  1. LINUX samba的安装使用
  2. C#基础全接触分类:asp.net技术
  3. CSDN Blog V3.0 升级公告
  4. 常见的几个js笔试题
  5. JS+Canvas的棋盘游戏和Java的动态结合
  6. Python心得--如何提高代码质量
  7. xtraTabbedMdiManager 双击最大化和关闭后返回主界面 z
  8. 《AOSuite 开发手册》之AOSuite 服务端开发
  9. 给UIScrollView添加category实现UIScrollView的轮播效果
  10. 教你如何保养iphone电池