gpt4 book ai didi

objective-c - UIWebView中的UIMenuController编辑菜单只出现第二次

转载 作者:太空狗 更新时间:2023-10-30 03:21:48 24 4
gpt4 key购买 nike

我发现在我的 iOS 9 应用程序中,当我在 UIWebView 中长按时,通常出现的编辑菜单仅在我长按的第二次(及以后)出现。我第一次在任何特定的 webview 中长按没有菜单显示,尽管选择 handle 确实出现了。第二次我在任何特定的 webview 中长按时,它的行为符合预期。

另一个奇怪的症状是,偶尔(但不是每次)当菜单出现时,某些东西会快速向屏幕左侧滑动,源自菜单,但速度太快以至于看不到它是什么。即使编辑菜单按应有的方式出现,也会发生这种情况。我希望这与问题有关。

我只在模拟器中测试过,因为我还没有在设备上安装 iOS 9。

在 iOS 8 中,相同的菜单按预期工作。

另一位开发人员给了我一个解决方法,当屏幕上只有一个 UIWebVeiw 时,它可能会起作用。放在viewDidAppear中(感谢陈先安):

[[myWebView.scrollView.subviews firstObject]   becomeFirstResponder];  
[[NSOperationQueue mainQueue] addOperationWithBlock:^{
[self becomeFirstResponder];
}];

但是,因为我有多个 webView,所以这对我来说不是一个理想的解决方案。如果我将它应用到每个 webview,它只适用于我应用它的最后一个。

这似乎是一个错误,希望 Apple 能尽快修复它,与此同时,对于我如何使它适用于多个 webView,有没有人有任何好主意?

最佳答案

我这样试过,成功了。第一的您必须自定义 UIWebView 并编写

- (BOOL)canBecomeFirstResponder {
return YES;
}

第二个您必须在处理长按之前调用此方法

[yourWebView becomeFirstResponder];

希望对你有帮助

关于objective-c - UIWebView中的UIMenuController编辑菜单只出现第二次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32685198/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com