显示加载时的等待警报视图

2023-11-30

我希望当我的应用程序启动时,它会显示一个警报视图大约 5 秒,然后根据后台进程的结果,它将显示另一个警报视图。

我遇到的问题是,当我尝试使用睡眠来等待后台进程发生时。第一个警报未显示并等待 5 秒。应用程序显示应用程序的第一个视图,然后 5 秒后短暂显示第一个警报。

我需要做什么才能实现我的愿望。

这是我的代码。

- (void)viewDidAppear:(BOOL)animated
{
    SSGlobalSettings *connSettings = [SSGlobalSettings sharedManager];

    UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"Connecting" message:@"Please wait, while your device connects" delegate:Nil cancelButtonTitle:nil otherButtonTitles: nil];
    [alertView show];

    [NSThread sleepForTimeInterval:5.0f];

    [alertView dismissWithClickedButtonIndex: alertView.cancelButtonIndex animated: YES];

    if ([connSettings.connectionStatus  isEqual: @"Not Found"])
    {
        UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"Connection Failed" message:@"Cannot find your device on the network" delegate:Nil cancelButtonTitle:@"OK" otherButtonTitles: nil];
        [alertView show];
    }
    else
    {
        UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"Connection Success" message:@"WYour device has been found on the network" delegate:@"OK" cancelButtonTitle:nil otherButtonTitles: nil];
        [alertView show];
    }
}

不要在主线程上使用睡眠。曾经。也不要从后台线程更新 UI。

您想要做的就是在主线程上显示警报并返回。

然后,当网络代码完成时,让它向主线程发送一条消息。在主线程中,当您收到已完成的通知时,请删除警报。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

显示加载时的等待警报视图 的相关文章

随机推荐

  • 为什么我们在“==”比较中指定变量的顺序很重要?

    我注意到 仅更改与 运算符进行比较的变量的顺序就会产生很大的性能差异 例如 variable variable 比variable variable 慢得多 为什么会这样 有类似的案例吗 顺便说一下 我使用的是从 GitHub 下载的 Op
  • 如何在 PowerShell 中从连接字符串获取数据库名称

    我正在尝试从 PowerShell 中的连接字符串获取数据库名称 Server server instance uid User pwd Hello Database SomeName 我可以想到两种方法来做到这一点 要么搜索字符串Data
  • 作曲家在 PHP 中未找到类异常

    我正在尝试包含来自作曲家的包 但我收到了找不到类 error 我已经尝试过以下可能性 supermeteor new Supermeteor Supermeteor XXXXXXXX and use Supermeteor Supermet
  • 如何将句子中第一个单词的第一个字母大写?

    我正在尝试编写一个函数来清理用户输入 我并不想让它变得完美 我宁愿有几个小写的名字和缩写 也不愿有一个完整的大写段落 我认为该函数应该使用正则表达式 但我对这些非常不熟悉 我需要一些帮助 如果以下表达式后跟一个字母 我想将该字母设为大写 f
  • 仅选择一个选项在角度4中显示ID而不显示名称

    我正在研究 Angular 4 Web API 当选择一个选项时 它将显示打包类型名称 其工作正常 但我的问题是 当单击添加按钮时 它只会保存我想要的包装类型ID 包装类型ID 和包装类型名称 这里我想在选择包装类型名称时自动将其ID 传递
  • 如何检测具有背景模糊的容器的亮度以改变文本的颜色

    模糊容器的亮度根据背景中的图像而变化 有没有办法检测图像或模糊容器的亮度来改变文本颜色 最好不处理图像 我制作了一个小部件作为一个有趣的练习和概念验证 称为PixelDataOverlay 它有一个background建设者和overlay
  • 二进制与线性搜索未排序的 N 个元素

    当我们应该使用快速排序时 我尝试理解一个公式 例如 我们有一个数组N 1 000 000元素 如果我们要搜索只有一次 我们应该使用一个简单的线性搜索 但如果我们要做 10 次 我们应该使用排序数组O n log n 如何检测阈值 何时以及对
  • 批处理窗口中的正则表达式

    我目前正在处理批处理作业 我也是新手 以获取 Maven 依赖项列表 一直在努力使用正则表达式获取这些依赖项 但无济于事 我已经对此测试了我的正则表达式site看起来它正在发挥作用 从这里检查了 FOR 循环内所需的转义字符堆栈溢出问题但同
  • 如何在 if 语句中使用这个布尔值?

    private String getWhoozitYs StringBuffer sb new StringBuffer boolean stop generator nextBoolean if stop true sb append y
  • 虚假唤醒后的互斥状态

    考虑这个使用 pthread 的基本多线程程序 我们有一个主线程 创建另一个执行一些工作的线程 bool done false mutex m condition c void foo pthread mutex lock m while
  • 将 np.arange 中的范围增加 1 则将范围增加 2

    我不确定这是一个错误还是我做错了什么 我有以下代码 r div 200 r max 1 4 numMax 84 lowerBin int numMax 2 r max r div upperBin int numMax 2 r max r
  • Swift 中带有键值对的 POST 请求

    我必须在 Swift 中发出发布请求并收到响应 我需要以键值对格式向请求添加值 然后得到答案 0 或 1 我不知道如何将字典值添加到请求中 var url NSURL string www myurl com var request NSM
  • 是否可以使用 CSS 中的 :active 选择器在点击时显示 div?

    我想展示一个div on click 目标是使用pure CSS只有 没有 jQuery Working FIDDLE Demo 考虑一下您想要这样的东西 我们尽可能简单地编写标记 一个元素为container 我们的一个元素link和另一
  • 如何在 iPython 中使用 pandas 库读取 .xlsx 文件?

    我想使用 python 的 Pandas 库读取 xlsx 文件并将数据移植到 postgreSQL 表 到目前为止我能做的就是 import pandas as pd data pd ExcelFile File Name 现在我知道该步
  • 应用程序第二次运行时拒绝访问文件

    当尝试使用代码访问 SD 卡上的文件时 我遇到一个奇怪的问题 var path D Test test txt try StorageFile file await StorageFile GetFileFromPathAsync path
  • 通过 m3u8 流式传输到 iPhone

    我一直在阅读有关通过 m3u8 在 iphone 上进行流媒体的内容 但我不确定我是否遗漏了一些东西 有据可查的是 MPMoviePlayerController 只能在 OS 3 1 中全屏播放 因此 iPhone 用户只能观看视频 在我
  • 省略号在 Firefox 中运行不佳,但在 Chrome 中运行良好

    我试图使用省略号将链接限制为宽度 html 是这样的 a class blueLink2 destination url space href http google com uyv245 http google com iuh345345
  • 如何禁用数据表上特定列的搜索/过滤?

    我的数据表有 5 列 我需要禁用第三 第四和最后一列的过滤 请帮忙 这是 JavaScript
  • 如何将条目参数传递给 Xamarin MVVM 视图模型

    我一直在寻找通过单击带有命令参数的按钮 在视图中 将输入参数 用户名 密码 传递到 Xamarin MVVM 视图模型的最佳方法 这是以 Xamarin MVVM 模式传递用户名和密码的示例 它工作正常 1 创建一个 LoginViewMo
  • 显示加载时的等待警报视图

    我希望当我的应用程序启动时 它会显示一个警报视图大约 5 秒 然后根据后台进程的结果 它将显示另一个警报视图 我遇到的问题是 当我尝试使用睡眠来等待后台进程发生时 第一个警报未显示并等待 5 秒 应用程序显示应用程序的第一个视图 然后 5