iphone - 当应用程序进入前台时查找当前 View 。 IOS

标签 iphone objective-c ios xcode cocoa-touch

当应用程序处于事件状态时,我们如何找到当前哪个 View 是第一响应者。我知道应用程序委托(delegate) applicationWillEnterForeground 和 applicationDidBecomeActive 在某些情况下会被调用,我如何使用它来亲密查看第一响应者。

我用谷歌搜索,堆栈溢出没有找到确切的答案。有什么想法 friend ..

最佳答案

获取对 iOS 应用程序中最顶层 View /窗口的引用

topMostView = [[[[UIApplication sharedApplication] keyWindow] subviews] lastObject];

引用getting-reference-to-the-top-most-view-window-in-ios-application链接。

编辑启动当前 View 的操作以在应用程序从后台返回时执行

Add BOOL applicationFromBackground; make its property in appDelegate.

Intially it will be applicationFromBackground = FALSE; in application didFinishLaunchingWithOptions method;

现在应用程序进入前台:

- (void)applicationDidEnterBackground:(UIApplication *)application
{
   applicationFromBackground = TRUE;
}

现在在所有 View Controller 的 View 中都会出现方法,该方法将为最顶层的 View Controller 调用,因此请执行以下操作:

- (void)viewWillAppear:(BOOL)animated
{
  [super viewWillAppear:animated];
  // Create AppDelegate instance
  AppDelegate *objAppDelegate = (AppDelegate *)[[UIApplication sharedApplication] delegate];
  if(objAppDelegate.applicationFromBackground)
  {
     applicationFromBackground = FALSE;
     //do what u want.
  }

}

关于iphone - 当应用程序进入前台时查找当前 View 。 IOS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12274627/

相关文章:

iphone - 核心位置 - 后备、位置缓存和替代方案

iphone - 为什么 viewDidAppear/viewWillAppear 不会在嵌套结构中被调用?

iphone - 如何按升序对日期格式为 @"Aug 2013"的字符串的 NSArray 进行排序..?

iphone - iOS 7 UIButton 仅在点击其文本标签时响应

python - 处理来自 IOS 设备的请求时发生异常

ios - 关闭呈现 View Controller

iphone - 获取实体名称 : not recognised as valid method

iphone - 完全困惑在哪里更改 openCV 中的代码

iphone - objective c 类为什么返回 -(id) 而不是它自己的类

ios - 尝试使用 swiftyJSON 快速解析 JSON