问题标签 [keywindow]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
objective-c - Objective-C Cocoa 中的关键窗口是什么?
什么是关键窗口?它是用来做什么的?我读过它用于“键输入”;但是有人可以扩展一下吗?一个例子将不胜感激。
ios - ios shareApplication rootviewcontroller.frame Y轴触发器
我有一个 iPad 应用程序,每次显示软键盘时,我都会将应用程序的框架“向上”移动。
关键是,在某些设备上这是正确的方式,但在其他设备上,它的方向与我想要的相反。它似乎不是特定于硬件的,甚至不是特定于软件的。我已经在 4 台 iPad(两台 ipad1、两台 ipad3 和一台 ipad2)上进行了尝试,全部使用 ios 5.1 (9B176)。有没有办法知道这是否会在设备上发生,以便我可以用逻辑来解决这个问题?
此外,似乎打算这样做的设备也会这样做并保持这种状态(反之亦然)。一旦发生,无论软件更新、设备重启、应用程序删除或 IPA 与从 xcode 运行的情况如何,它总是会发生或不发生。
objective-c - 禁用与主窗口的交互,而其他窗口处于打开状态
我有一个主窗口,所有工作都在其中完成。当我打开首选项面板时,只要首选项面板打开,我就想冻结主窗口。例如 iTunes:只要我打开首选项,我就可以与首选项面板进行交互,仅此而已。
有没有一种简单的方法来存档这种行为?
ios - keyWindow = nil 仅在 iPad 上
我在 iPad 上的应用程序 keyWindow 出现问题。
我为 iPhone 设计了我的应用程序,后来通过设置设备系列和为 iPad 添加新的故事板来添加对 iPad 的支持。到目前为止一切都很好,我可以在 ipad 上打开应用程序,甚至当我为 iPad 定制它时,界面也会显示出来。
现在问题来了:我不知道为什么,但我的应用程序的 iPad 版本没有 keyWindow。我需要它,因为我在开始时会显示一个加载对话框,应该锁定屏幕以进行用户交互,所以我将它添加到主窗口。在 iPhone 上,这工作正常。
我发现“[UIApplication sharedApplication].keyWindow”给了我null,但只在iPad上,而“[[UIApplication sharedApplication].windows objectForKey:0]”给了我窗口对象,它当然必须存在,因为应用程序显示完整的用户界面。
ipad 和 iphone 的源文件当然是完全一样的,但是我想我后来添加 iPad 支持时漏掉了一些东西……
我已经尝试将应用程序委托中的窗口对象手动设置为 makeKeyAndVisible 但没有运气。([self.window makeKeyAndVisible];)
有谁知道我必须做什么才能使其正常工作?
亲切的问候
ios - 创建新的 UIWindows,接管关键窗口——不好的做法?
我正在开发一个需要在其他所有内容之上显示叠加层的应用程序。它通过创建一个新的 UIWindow 并使用 makeKeyAndVisble 来“接管”屏幕来做到这一点。完成后,它会将控制权交还给原始 UIWindow。
这是一件坏事吗?感觉就像是在低级别控制应用程序,这通常很糟糕;另一方面,这样做非常简单,所以也许完全可以接受。
意见/经验?
osx-snow-leopard - 在 OSX 10.6.8 上将窗口设置为假全屏后无法成为关键窗口
我的应用程序最初有一个窗口 (Def)。然后它产生了一个新窗口(New)。所有两个窗口都可以从窗口子菜单项或空间控件切换。
但是,如果我尝试在 OSX 10.6.8 上将“新建”窗口设置为假全屏模式,那么如果我通过菜单或空间控制切换到“默认”窗口,就会出现问题。我无法“完全”切换回“新建”窗口。
“完全”意味着我可以看到“新建”被带到屏幕顶部,但窗口控制器无法收到通知“NSWindowDidBecomeKeyNotification”。此外,通过[NSApp keyWindow],我可以看到关键窗口始终是“Def”。而且我总能看到在 Window 子菜单中选中了“Def”。
有人遇到过这个问题吗?
iphone - keywindow 在 ([[[UIApplication sharedApplication] keyWindow] addSubview:myView];) iOS 6 中不起作用
我正在使用以下代码在电影播放器控制器上显示一个窗口:
它在 iOS 5 中工作正常,但在 iOS 6 中停止工作。在 iOS 6 中甚至没有显示窗口。所以请你建议我解决这个问题。
谢谢
iphone - 在 MoviePlayer 全屏 iOS 6 中添加视图
我想mpmovieplayercontroller
全屏添加自定义视图(自定义栏)。我尝试了以下代码:
它在 iOS 5 中运行良好,但在 iOS 6 中无法运行。所以请任何人建议我对此提出建议。
谢谢
ios - keyWindow 并不总是返回 UIWindow
我一直在[[UIApplication sharedApplication] keyWindow]
使用UIView
. 然后我将该视图转换为UIImage
可使用的视图。除了我同时显示 a 的情况外,这很好用UIAlertView
。在这种情况下,keyWindow
它不会UIWindow
像通常那样返回 a ,而是返回 a UIModalItemHostingWindow
,并且在将该视图转换为图像之后,它只是一个纯黑色的屏幕截图。
现在文档说keyWindow
“在最近发送 makeKeyAndVisible 消息的 windows 数组中保存 UIWindow 对象。”
这UIModalItemHostingWindow
一定是由于我正在呈现的模式警报,也许keyWindow
是返回该视图而不是整个屏幕。
我的问题是,我怎样才能始终保证我得到一个UIView
准确表示屏幕上可见的一切的东西?这似乎keyWindow
不是一个好的解决方案。一种解决方法是延迟我抛出的所有可能的警报,但如果可能的话,我想找到一个更好的解决方案
ios - 视图不在窗口层次结构中
我在最新的测试版 iOS 8 上遇到了一个奇怪的问题。与 iOS7 相反,我的视图正在从窗口层次结构中消失——基本上我会UINavigationController
在某个时候用新的视图替换我的视图。这段代码在 iOS 8 之前没有问题,知道为什么吗?如果我将 - 添加UINavigationController
到keyWindow
- 它实际上绕过了这个问题,并且视图实际上“停留”在窗口层次结构中:
但我不喜欢这种“黑客”。