首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >uitextview on uitableviewcell

uitextview on uitableviewcell
EN

Stack Overflow用户
提问于 2014-07-18 14:56:25
回答 1查看 461关注 0票数 0

我在自定义的UITableViewCell中有一个UITextView。我使用UITextView主要是为了在cell上提供数据检测。我为不同的单元格设置了自己的自定义UIMenuitems。

代码语言:javascript
复制
              |-------------------------------|
              |                               |
              |   |------------------|        |
              |   |                  |        |
              |   |        UITextView|        |
              |   |__________________|        |
              |                               |
              |                UITableViewCell|
              |_______________________________|

我面临的问题是,当我点击UITextView中的区域时,我没有得到任何菜单控制器,预期的行为是,它应该调用为颗粒UITebleViewCell定义的相同的菜单控制器。

如果我用UILabel替换UITextView,我可以得到正确的菜单控制器,但是我失去了数据检测能力。

请指导我正确的方向,我遗漏了什么或我做错了什么?

EN

回答 1

Stack Overflow用户

发布于 2014-07-18 16:12:03

您可以使用UITapGestureRecognizer来检测文本视图上的点击。

  • 确保您的textView

userInteractionEnabled为TRUE

myTextView.userInteractionEnabled = TRUE;

  • 为您的文本视图添加手势识别器

UITapGestureRecognizer *tapGestureRecognizer = [UITapGestureRecognizer alloc :self action:@selector(myTextViewTapped:)];myTextView addGestureRecognizer:tapGestureRecognizer;

  • Display menu controller on tap

  • (void)myTextViewTapped:(id)sender { }

(@“点击我的文本视图”);//立即显示菜单!NSLog

  • 如果您的菜单控制器依赖于单个单元格,那么您可以使用行号作为textView的标签,并显示相关的菜单控制器

//在您的表视图中cellForRowAtIndexPath方法myTextView.tag = indexPath.row;//在您的选择器中UITextView *myTextView = (UITextView *)cellForRowAtIndexPath;int rowNumber = myTextView.tag;

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24818937

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档