文档章节

iOS MenuController

BluesChow
 BluesChow
发布于 2014/08/05 00:12
字数 187
阅读 23
收藏 0

【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>

How to add the system's menu in your gesture?

What you should do must same with this:

1) - (BOOL)canBecomeFirstResponder must return YES;

2) - (BOOL)canPerformAction:(SEL)action withSender:(id)sender what you want to show item should return YES;

3) Before you show the menu, you should call the method: [self becomeFirstResponder];

4) If you want to show the second menu, you should call the method "setMenuVisible:NO",otherwise the menu will not show.

This is the whole view controller .m file content, nothing content in the .h file.

@implementation ViewController

- (void)viewDidLoad
{
    [super viewDidLoad];
    
    UILongPressGestureRecognizer *longGesture = [[UILongPressGestureRecognizer alloc] initWithTarget:self action:@selector(longGesture:)];
    [self.view addGestureRecognizer:longGesture];
}

- (void)didReceiveMemoryWarning
{
    [super didReceiveMemoryWarning];
}

- (BOOL)canBecomeFirstResponder
{
    return YES;
}

- (BOOL)canPerformAction:(SEL)action withSender:(id)sender
{
    if (action == @selector(copy:)) {
        return YES;
    }
    return NO;
}

- (void)longGesture:(UILongPressGestureRecognizer *)longGesture
{
    if (longGesture.state == UIGestureRecognizerStateBegan) {[self becomeFirstResponder];
        UIMenuController *menuController = [UIMenuController sharedMenuController];
        [menuController setTargetRect:CGRectMake(0, 0, 50, 50) inView:self.view];
        [menuController setMenuVisible:YES animated:YES];
    }
    
}

- (void)copy:(id)sneder
{
    
}

- (void)delete:(id)sender
{}

- (void)move:(id)sender
{}

@end

Reference Link:http://www.cocoachina.com/bbs/read.php?tid=75860&keyword=menucontroller

Thanks,

Blues

© 著作权归作者所有

BluesChow
粉丝 5
博文 163
码字总数 29622
作品 0
深圳
程序员
私信 提问
仿QQ的长按手势MenuController效果

近期写了个小Demo,遂分享出来,文末附Github地址 先讲下该控件需要满足的条件 左侧和右侧展示的按钮不一样(比如右侧自己发送的消息有撤回) 不同类型的消息展示的按钮不一样(比如文本可以复制...

si1ence
2017/12/14
0
0
Three20中TTNavigator传参

简单映射: Three20中的TNavigator对于软件导航很有用,只需要维护一张map映射表就行了。就像url表示一个网页一样,Three20也采用了相同的方式,用url关联页面。大家可以参看TTNavigatorDemo...

张志浩
2012/11/23
82
0
url?传参报 No mapping found for HTTP request警告

使用url传参数: 链接代码:User 控制器代码: @Controller public class MenuController{ @Autowired UserService userService; @RequestMapping(value="/user.html/{start}") public Mode......

whpcrs
2013/10/23
343
4
Three20中TNavigator用法总结

简单映射: Three20中的TNavigator对于软件导航很有用,只需要维护一张map映射表就行了。就像url表示一个网页一样,Three20也采用了相同的方式,用url关联页面。大家可以参看TTNavigatorDemo...

长平狐
2012/08/13
49
0
关于spring mvc 拦截器配置的问题,想请教各位大牛

请问一下,我在spring mvc拦截器设置中有如下配置: /menuController/allTreeNode.action /userController/reg.action /userController/combogrid.action /userController/combobox.action /u......

胡培
2013/05/27
2.1K
2

没有更多内容

加载失败,请刷新页面

加载更多

mars-config 动态配置管理

mars-config 码云地址:https://gitee.com/fashionbrot/mars-config 介绍 spring mvc 、springboot 动态配置系统。http 轮训方式 更新 动态配置 软件架构 软件架构说明 后端使用技术 :sprin...

fashionbrot
20分钟前
9
0
女朋友玩吃鸡手游被开挂老哥骗炮,我见义勇为将骗子绳之以法

大家好,我是乔哥。 晚上10点以后下班后我回到自如出租房里面,开始处理公众号粉丝发来的消息,一条一条处理,突然看到了这么几条消息,吸引了我的眼球: 然后我就和这位女粉丝小红(化名)聊...

gzc426
25分钟前
3
0
两款软件

fadetop保护眼睛软件 Snipaste截图软件

伟大源于勇敢的开始
52分钟前
6
0
06.全局锁和表锁

根据加锁的范围,MySQL里面的锁大致可以分成全局锁、表级锁和行锁三类。 全局锁 全局锁就是对整个数据库实例加锁。MySQL提供了一个加全局读锁的方法,命令是flush tables with read lock(FTW...

scgaopan
今天
7
0
图解安装CentOS8

最近正式发布了CentOS8!迫不及待地准备下载了CentOS8镜像,准备体验下,工作繁忙无暇理会。 今天抽空安装体验下~ 可从CentOS官网下载:https://centos.org/download/ 为了快速可以选择从国...

技术训练营
昨天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部