Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/114.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
ios-单击按钮后才呈现视图_Ios - Fatal编程技术网

ios-单击按钮后才呈现视图

ios-单击按钮后才呈现视图,ios,Ios,我正在开发一个小的ios应用程序,我正在努力解决一个奇怪的问题。 我有一个视图,视图中有一个按钮和一些图像。 图像以异步方式加载。 视图是隐藏的,并且最初不是ViewController的一部分 当用户单击按钮时,我实例化视图并将其添加为子视图。 添加子视图时,仅渲染部分图像(通常是前两个,共25个)。但当我点击视图上的任何按钮时,所有其他图像都会突然出现 是什么导致了这个问题?为什么图像仅在单击按钮时渲染?(按钮的事件处理程序中没有代码) 应用超时可以修复此问题。我不明白为什么: -(void

我正在开发一个小的ios应用程序,我正在努力解决一个奇怪的问题。 我有一个视图,视图中有一个按钮和一些图像。 图像以异步方式加载。 视图是隐藏的,并且最初不是ViewController的一部分

当用户单击按钮时,我实例化视图并将其添加为子视图。 添加子视图时,仅渲染部分图像(通常是前两个,共25个)。但当我点击视图上的任何按钮时,所有其他图像都会突然出现

是什么导致了这个问题?为什么图像仅在单击按钮时渲染?(按钮的事件处理程序中没有代码)

应用超时可以修复此问题。我不明白为什么:

-(void) viewDidAppear:(BOOL)animated
{
    [super viewDidAppear:animated];
    [NSThread sleepForTimeInterval:0.1];
}

我尝试过提供一个代码示例,但我似乎无法将其最小化为一个简单的示例。

听起来好像您没有更新UI,一旦您按下该按钮,iOS将自动更新显示图像的UI。记住,它只能在主线程中更新。为什么我要更新我的UI呢?图像已经加载。所有操作都在主线程上完成。您确定图像在显示视图之前已完成加载吗?您确定主线程用于显示(设置)图像吗?我正在调用performSelectorOnMainThread