美文网首页
Preparing Your UI to Run in the

Preparing Your UI to Run in the

作者: RadioHeadache | 来源:发表于2019-09-27 18:03 被阅读0次

让你的 UI 准备好在前台运行

本文链接:https://developer.apple.com/documentation/uikit/app_and_environment/scenes/preparing_your_ui_to_run_in_the_foreground?language=objc

配置您的应用以显示在屏幕上。

概述

使用前台过渡( foreground transitions ),让您的应用准备将 UI 显示在显示屏上。 应用程序向前台过渡通常是对用户操作的响应。 例如,当用户点击应用程序的图标时,系统会启动该应用程序并将其带到前台。 使用前台过渡来更新应用的用户界面,获取资源并启动处理用户请求所需的服务。

所有状态转换都会导致 UIKit 将通知发送到适当的委托对象:

您可以同时支持两种类型的委托对象,但是 UIKit 总是在可用时使用 scene delegate。 UIKit 仅通知与进入前景的特定场景关联的 scene delegate。 有关如何配置场景支持的信息,请参阅指定应用程序支持的场景 Specifying the Scenes Your App Supports

进入前台时更新应用程序的数据( Data Model )

在启动时,系统将您的应用程序以非活动状态启动,然后再将其转换为前台。 使用您应用的启动时方法( launch-time methods )来执行当时需要执行的所有工作。 对于处于后台的应用程序,UIKit可通过调用以下方法之一将您的应用程序移至非活动状态:

从后台过渡到前景时,请使用以上方法从磁盘加载资源并从网络获取数据。

有关如何在启动时准备应用程序的信息,请参阅响应启动应用程序

在激活时配置用户界面和初始任务

在显示应用程序的用户界面之前,系统会将您的应用程序立即切换到活动状态( active state )。 激活是配置应用程序的UI和运行时行为的好时机; 特别是:

  • 根据需要显示应用程序的窗口。

  • 根据需要更改当前可见的视图控制器。

  • 更新数据以及视图和控件的状态。

  • 显示控件以恢复暂停的游戏。

  • 启动或恢复用于执行任务的所有调度队列。

  • 更新数据源对象。

  • 启动定期任务的计时器。

将您的配置代码放入以下方法之一:

激活也是在向用户显示用户界面之前对其进行最后润饰的时间。 不要运行任何可能会阻止您的激活方法的代码。 相反,请确保事先拥有所需的一切。 例如,如果您的数据在应用程序外部频繁更改,请在应用程序返回到前台之前,使用后台任务从网络中获取更新。 否则,准备在异步( asynchronously )获取更改时显示现有数据。

出现视图时启动只属于 UI 的特定任务

当您的激活方法返回( return )时,UIKit 会显示您显示的所有窗口( shows any windows that you made visible )。 它还通知所有相关的视图控制器( controllers )其视图( views )将要出现。 使用视图控制器的 viewWillAppear:方法对界面执行所有最终更新。 例如:

  • 根据需要启动用户界面动画。

  • 如果启用了自动播放,则开始播放媒体文件。

  • 开始以全帧速率显示游戏图形和沉浸式内容。

请勿尝试显示其他视图控制器或对用户界面进行重大更改。 当视图控制器出现在屏幕上时,您的界面应该可以显示了( your interface should be ready to display )。

相关文章

网友评论

      本文标题:Preparing Your UI to Run in the

      本文链接:https://www.haomeiwen.com/subject/okyauctx.html