问题标签 [viewdidappear]

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.

0 投票
1 回答
2985 浏览

xcode - Xcode - UILabel 没有改变 viewDidAppear 的值

大家好,我正在创建一个 iPhone 应用程序。它使用 uitableview 并进入详细视图。

现在在详细视图上,我有一个滚动视图,所有数据(XML)都可以正常输入,每次都没有问题。

我的滚动视图中的 UILabel 确实使用正确的数据进行了更新,但是,它们不断在彼此之上添加子视图,以不断添加标签,这一切看起来都像胡说八道。

我已经尝试了一切来尝试删除子视图,例如:

所以我很困惑,我不知道发生了什么。有什么帮助吗?我一直在谷歌上搜索年龄和年龄,但一直在寻找不起作用的相同答案:(

任何可能对您有所帮助的网站的指示将不胜感激。

谢谢!

这是我在控制器中加载所有滚动视图和标签的内容:

0 投票
1 回答
964 浏览

iphone - 为什么我的视图控制器不调用 - (void)viewDidAppear:(BOOL)animated 方法?

我想在 viewDidAppear 方法中做一些事情,但是这个方法不会自动调用 SDK 描述这个方法是通知视图控制器它的视图被添加到一个窗口中。如果意味着在我的视图控制器中实现此方法可以自动调用?

0 投票
1 回答
1453 浏览

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

请帮助,如果您有任何经验,我们的时间很长。

我有这个结构。

但是 viewDidAppear/viewWillAppear 方法不会在最里面的视图中被调用。我不知道为什么。

当我阅读文档时,它说“添加到窗口时”。它们适用于 Windows 吗?不要这么想。我该怎么办?为什么不调用这些 CRUTIAL 方法?

0 投票
1 回答
354 浏览

iphone - 呈现模态视图后 AVAudio 不会停止

我有一个显示电影的应用程序。第一个屏幕显示呈现不同模式视图的按钮。在这些模态视图中是播放视频的按钮。

我希望主菜单播放音乐(很简单),但我希望它在第二个模式视图中持续存在,但在视频开始播放时停止。

按下电影按钮时,我尝试 [audioPlayer stop],但音乐仍在播放。

我尝试在 viewDidAppear 和 viewDidDisappear 中停止和播放音频。这使得音频在呈现第二个视图时重新启动,而不是在视频期间播放。

我希望这是有道理的,我真的只需要知道如何让音频一直播放(通过两个或三个模态视图),除了在电影播放期间。

这是我的vewDidAppear方法:

0 投票
3 回答
2041 浏览

iphone - 在 viewDidLoad 之后加载数据

我有一个 viewController 需要我加载一系列图像并将它们显示在屏幕上,但是在 viewDidLoad 中加载这些图像需要一段时间,并且在视图出现在屏幕上之前会有延迟。

有没有一种方法可以在 viewDidLoad 中仅加载屏幕上可见的前 5 个图像,然后在 viewController 加载后立即加载剩余的图像?

这是 viewWillAppear 或 viewDidAppear 的用途吗?是否有其他地方最适合在不延迟用户响应时间的情况下加载内容?

提前非常感谢!

0 投票
2 回答
5814 浏览

iphone - viewDidAppear 用于子视图

我想在按下按钮时加载一些数据,并在加载时将“加载视图”显示为当前视图的子视图。

所以我只想在子视图出现后才开始加载。如果不是,我的 UI 在没有通知的情况下卡住(并且子视图仅在加载完成后显示)。

有没有办法使用viewDidAppear子视图之类的东西?

在这样的事情之后立即做这项工作addSubview:是行不通的:

(我不想在新线程上加载,因为我正在处理的是 CoreData,它不是线程安全的)。

谢谢你!

0 投票
1 回答
998 浏览

iphone - (iphone) UI 更新量大时如何显示活动指示器?

我试图在大量 UI 更新时显示活动指示器。

我最初的失败尝试是

  1. 在 view1 上显示活动指示器
  2. pushViewController(创建这个viewController的视图需要很长时间)
  3. 当view1的viewDidDisappear(当pushViewController的push动画发生时),隐藏activity indicator

问题是即使我在 pushViewController 之前确实调用了“显示活动指示器”,但由于在创建被推送的 viewController 的视图时发生了繁重的 UI,活动指示器没有显示。

我改变了策略如下,它有效,但我不明白为什么。

  1. 推视图控制器
  2. 在 viewController 的 viewDidLoad 处显示活动指示器
  3. 在 viewDidAppear 执行繁重的 UI 加载并隐藏指示器

我的印象是,第一种方法没有显示指示器的原因是由于 UI 处理繁重。
请参阅链接中的讨论。 (iphone) 在大量 ui 更新之前显示活动指示器

如果队列上的 UI 更新过多导致 UI 更新延迟(指示器未显示),为什么第二种方法会有所不同?

我知道只有在创建视图时才会调用 viewDidLoad 。
当视图实际显示在屏幕上时,会调用 viewDidAppear。(因此可以多次调用)

但是是否有根本的区别可以解释为什么使用 viewDidAppear 的第二种方法适用于我的情况?

除了所谓的主线程之外,还有没有 UI 更新线程?还是主线程是UI更新线程?

谢谢

0 投票
1 回答
843 浏览

cocoa-touch - 在 pushViewController 之后没有调用 viewDidAppear

我正在编写一个应用程序,它从数据库中提取信息,显示在表格中,并允许用户通过从表格中选择一个项目来获取详细信息。每当表格更新时,列表中的值都是正确的,但表格显示旧信息(即,如果表格最初有 3 个项目,现在有 2 个,表格将显示原来的 3 个项目,但如果用户尝试点击第三项)。我的详细信息视图也出现了同样的问题。如果用户选择一个值,则该信息的视图会发生变化。如果他们向后导航并选择一个新值,则视图会更改,但会显示第一次选择的信息。我将这两个归因于视图出现时未调用 viewDidAppear。我正在使用导航控制器来加载视图,但它们仍然没有调用该方法。

这就是我显示我的 listView 的方式: UITableViewController

我的 detailsView (UIViewController) 以类似的方式显示。导航控制器位于 AppDelegate 中。主窗口加载:

mainWindow 和我的 ModalView 都成功调用了 viewDidAppear 方法。我完全不知道为什么其他两个不打电话给他们。在此先感谢您的帮助。

0 投票
2 回答
1555 浏览

iphone - iOS Root View Controller 的 viewDidAppear:在启动画面 (Default.png) 仍在屏幕上时调用

在我的 iOS 应用程序中,我想在根视图控制器已经出现在屏幕上之后运行一系列操作。但是,iOS 应用程序似乎正在调用 viewDidAppear,而初始屏幕(即显示 Default.png 图像)仍在屏幕上并且在根视图控制器被布置在屏幕上之前。我也在 viewDidLoad 中尝试过相同的代码,并且遇到了同样的问题。我如何强制代码仅在根视图控制器实际在屏幕上运行时才运行?

0 投票
1 回答
993 浏览

iphone - 数据加载时显示活动指示器的问题

我觉得好像有一个非常简单的解决方案可以解决我的问题,但到目前为止我收效甚微......我想加载我的初始 .xib 文件(提前退出 default.png 启动屏幕),以便我可以显示加载我的 html 数据并设置由我的 xib 文件创建的文本标签字段时的活动指示器。

不幸的是,当我执行下面的代码时,我会显示我的 default.png 图像,直到从每个网站加载所有数据......为了首先显示我的 mainView,我可以更改什么,然后启动活动指示器,加载我的html 数据,并在我的 mainView 中设置文本标签?