【问题标题】:ios access main window or viewios访问主窗口或视图
【发布时间】:2011-10-12 19:08:15
【问题描述】:

我想知道是否有一种简单的方法可以访问 IOS 中的主窗口或视图。类似于:

[UIScreen mainScreen]

谢谢。

【问题讨论】:

    标签: ios uiview window main


    【解决方案1】:

    很聪明,适用于任何类别:

    [(YourAppDelegate *)[[UIApplication sharedApplication] delegate] window];
    

    注意:不要忘记导入你的 appDelegate 类

    【讨论】:

      【解决方案2】:

      最好使用UIWindow * mainWindow = [UIApplication sharedApplication].windows.firstObject;找到主窗口

      使用keyWindow 可以返回位于应用程序窗口上方的键盘或 UIAlertView 窗口。

      【讨论】:

      • 这是正确的答案,有解释!我想弄清楚为什么当有 alertview 时我的视图消失了。
      【解决方案3】:

      如果你有一个指向窗口中某个子视图的指针,你可以很容易地访问它的窗口:

      UIWindow *window = mySubview.window;
      

      【讨论】:

        【解决方案4】:

        试试:

        UIWindow *frontWindow = [[[UIApplication sharedApplication] windows]
                                                                    lastObject];
        

        或者简单地说:

        UIWindow *frontWindow = [[UIApplication sharedApplication] keyWindow];
        

        【讨论】:

        • keyWindow 为我返回 nil。 lastObject 返回了正确的结果。谢谢。
        • 你应该使用 firstObject 而不是 lastObject。参见“windows”文档
        • 当心keyWindow,请看下面我的回答
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-09-22
        • 1970-01-01
        • 2011-02-09
        相关资源
        最近更新 更多