草庐IT

UIMenuController

全部标签

ios - 在 UITextField 上启用复制和粘贴而不使其可编辑

我希望UITextField(或者理想情况下,UILabel)中的文本是不可编辑的,但同时给出用户能够将其复制并粘贴到其他地方。 最佳答案 我的最终解决方案如下:我创建了一个UILabel的子类(UITextField应该工作相同),它在被点击后显示一个UIMenuController。CopyableLabel.m看起来像这样:@implementationCopyableLabel-(BOOL)canPerformAction:(SEL)actionwithSender:(id)sender{if(action==@select

ios - 在 UITextField 上启用复制和粘贴而不使其可编辑

我希望UITextField(或者理想情况下,UILabel)中的文本是不可编辑的,但同时给出用户能够将其复制并粘贴到其他地方。 最佳答案 我的最终解决方案如下:我创建了一个UILabel的子类(UITextField应该工作相同),它在被点击后显示一个UIMenuController。CopyableLabel.m看起来像这样:@implementationCopyableLabel-(BOOL)canPerformAction:(SEL)actionwithSender:(id)sender{if(action==@select

iphone - 为什么我的 UIMenuItems 显示在 UIMenuController 的 'more' 部分?

我在长按表格单元格时显示UIMenuController。我正在使用下面的代码。-(void)onCellLongPressed:(UILongPressGestureRecognizer*)recognizer{if(recognizer.state==UIGestureRecognizerStateRecognized){ContactTableViewCell*cell=(ContactTableViewCell*)recognizer.view;[cellbecomeFirstResponder];UIMenuItem*item1=[[UIMenuItemalloc]initW

iphone - 如何从 iOS 中的 UIMenuController 中删除默认的 UIMenuItem?

我想从UIMenuController中删除一些默认的UIMenuItem对象,如“剪切”、“复制”等。怎么做?谢谢。 最佳答案 将显示菜单的View(例如UIWebView、UITextView)子类化并覆盖-canPerformAction:withSender:以返回NO表示您不想显示的菜单项。-(BOOL)canPerformAction:(SEL)actionwithSender:(id)sender{if(action==@selector(copy:)){returnNO;}else{return[supercanPe

iphone - UIMenuController 未显示 UIPasteBoard 已清除 iPhone 应用程序?

我在基于消息的iPhone应用程序中工作。在我的应用程序中看起来像iMessagenativeiOS应用程序。我用用过的UIImageView和UILabel制作了气泡。我将UILabel设为可点击并显示复制选项。当消息输入UITextView未处于事件状态时,它工作正常。1.Icanshowthe"Copy"optionwhenweclickingUILabelandtheUITextViewisnotbecomeFirstResponder.2.WhentheuserclickingtheMessageTextView(UITextView)fromthebottomofthesc

ios - UIMenuController 第一次没有更新菜单

我有UITextView,我想在其上添加突出显示作为自定义菜单项。我已注册到以下通知UIMenuControllerWillShowMenuNotification。通知的方法是这样的:iftextIsHighlighted{lethighlightMenuItem=UIMenuItem(title:"Highlight",action:Selector("highlightText"))UIMenuController.sharedMenuController().menuItems=[highlightMenuItem]}else{lethighlightMenuItem=UIMe

iphone - 从 UIMenuController 中获取选定的文本

我试图在使用UIMenuController执行操作时获取选定的文本。如何取出选定的文本?我目前正在使用UIWebView,但如果有的话,我想要一个通用的解决方案。 最佳答案 您应该能够从UIPasteboard获取数据。对于文本,它应该类似于[UIPasteboardgeneralPasteboard].string。 关于iphone-从UIMenuController中获取选定的文本,我们在StackOverflow上找到一个类似的问题: https:/

ios - UIMenuController 在呈现后立即被解雇

我已经将UIWebView子类化以在其中添加自定义UIMenuController功能,它在iOS9之前一直运行良好。我不确定发生了什么变化,但现在我遇到了这样一种情况,当我点击一个链接时,应该显示菜单,菜单会短暂显示,但会消失(我不再点击)。我很难弄清楚解雇是从哪里来的。我正在观察UIMenuControllerDidHideMenuNotification通知,它确实在菜单消失后立即被调用,但我很难找到解雇的原因。我知道可能潜伏着许多不同的问题,但我想知道是否有人以前经历过这样的事情?有没有办法以某种方式追踪解雇的原因? 最佳答案

ios - 第二个 UIMenuController 没有隐藏

在UITextView中点击光标会调出UIMenuController。点击选择会导致相关文本被选中,并显示另一个带有新选项的UIMenuController。点击TextView中的任何其他位置会导致“第二个”UIMenuController隐藏。我有一个自定义UIMenuItem,当点击时,它会选择UITextView中的当前文本行,然后再次显示UIMenuController以进行后续操作,但是“第二个”UIMenuController在点击时不会隐藏View中预期的任何其他位置。自定义菜单项操作:-(void)selectLine:(id)sender{NSString*str

iOS:如何从 UIMenuController 获取选定的 UIMenuItem

我正在尝试使用UIMenuCnotroller来显示动态生成的项目列表,它们共享相同的操作方法,因此我需要知道在单个操作方法中选择了哪个项目。但是在action方法中-(void)menuItemAction:(id)sender;sender其实是UIMenuController对象,我没有找到任何方法UIMenuController可以告诉我选择了哪个菜单项。我能想到的一个解决方案是为不同的item动态生成不同的action选择器,在forwardInvocation中做一些tricks但是有没有更简单的方法呢? 最佳答案 您可