По какой-то причине, когда я закрываю свое дочернее представление, это вызывает ошибку с моим веб-обзором (в родительском представлении).Вызов, который я использую для закрытия дочернего представления: (я не знаю, является ли это правильным способом сделать это)
[normalSplashScreen_vc closeNormalSplashScreen];
Дает мне следующую ошибку:
Попытка получить веб-блокировку из потока, отличного от основного или веб-потока.Это может быть результатом обращения к UIKit из вторичного потока.Сбой сейчас ...
Я не могу понять, почему закрытие дочернего представления влияет на базовое веб-представление?
(Я думаю, что, вызывая функцию closeNormalSplashScreen
, я закрываю главное представление, даже если оно вызывается в дочернем представлении - если это так, как мне решить эту проблему?)
Главный вид
@interface turfplusViewController : UIViewController {
IBOutlet splashScreen *FirstRunsplashScreen_vc;
IBOutlet NormalSplashScreen *normalSplashScreen_vc;
IBOutlet UIWebView *Webview;
}
@property(nonatomic, retain) splashScreen *FirstRunsplashScreen_vc;
@property(nonatomic, retain) NormalSplashScreen *normalSplashScreen_vc;
// Obviously these functions are declared correctly but for the sake of space
- (void) displayFirstRunSplashScreen {
[self presentModalViewController:FirstRunsplashScreen_vc animated:NO];
}
- (void) displayNormalSplashScreen {
[self presentModalViewController:normalSplashScreen_vc animated:NO];
}
SplashScreen
Два экрана-заставки практически одинаковы (первый из них имеет индикатор выполнения).
@interface NormalSplashScreen : UIViewController {
IBOutlet UIActivityIndicatorView *NormalActivityIndicator;
}
@property(nonatomic, retain) UIActivityIndicatorView *NormalActivityIndicator;
// Obviously these functions are declared correctly but for the sake of space
- (void) closeNormalSplashScreen {
[self dismissModalViewControllerAnimated:YES];
}
Относится к этому и этому вопросу.(Второй не отвечает на вопрос ... это возможно?)