В вашем методе initWithFrame:isPreview:
создайте WebView в обычным способом , затем отправьте себе сообщение addSubview:
, передавая веб-представление:
webView = [[WebView alloc] initWithFrame:frame];
[self addSubview:webView];
Если вам интересно, какой прямоугольник вы должны передать в качестве фрейма WebView, прочитайте View Programming Guide . Кроме того, не забудьте выпустить webView
в dealloc
(или автоматически выпустить его в initWithFrame:isPreview:
).
Как только у вас появится веб-представление, вам нужно загрузить в него страницу. Установите подходящий длительный интервал анимации (не менее пары секунд) и загрузите страницу в animateOneFrame
:
- (void) animateOneFrame {
[[webView mainFrame] loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:@"http://google.com/"]]];
}
Вы также можете обработать WebViewProgressFinishedNotification
и отложить повторную загрузку веб-представления, пока это не произойдет (чтобы компенсировать медленные или пропитанные соединения). Вы сделаете это с переменной экземпляра, для которой вы установите YES
в initWithFrame:isPreview:
и в вашем методе-обработчике уведомлений, а также протестируете и установите NO
в animateOneFrame
:
- (void) animateOneFrame {
if (hasFinished) {
[[webView mainFrame] loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:@"http://google.com/"]]];
hasFinished = NO;
}
}