0
다른 탭을 추가 할 때 새 UIWebview를 만드는 웹 브라우저를 구축하고 있습니다. 새 뷰에는 작성시 특정 뷰를 호출 할 수있는 태그가 제공됩니다. 전방에 서브 뷰를 호출하면로드 요청에 응답하지 않습니다. 이것은 서브 뷰를 앞으로 가져 오는 방법입니다.UIWebview의 하위 뷰가로드 요청에 응답하지 않습니다.
-(void) selectionMade:(id)sender
{
//find view with same tag num as button pushed
for (UIView *view in self.webView.subviews)
{
if (view.tag == [sender tag])
{
[self.webView bringSubviewToFront:view];
}
}
}
다음은 주소를 입력하는 텍스트 필드에 응답하기위한 코드입니다.
- (void)textFieldDidEndEditing:(UITextField *)textField
{
NSString *text = [textField.text lowercaseString];
if (![text hasPrefix:@"http://"] && ![text hasPrefix:@"https://"])
{
text = [NSString stringWithFormat:@"http://%@", text];
}
self.title = text;
url = [NSURL URLWithString:text];
NSURLRequest *request = [NSURLRequest requestWithURL:url cachePolicy:NSURLCacheStorageAllowedInMemoryOnly timeoutInterval:10.];
[self.webView loadRequest:request];
}
웹보기가 있고 다른 웹보기를 웹보기의 하위보기로 추가 하시겠습니까? 이것은 나쁜 행동입니다. 로드 요청은 하나의 웹보기로 보내지 만, 다른 웹보기가 하위보기로 있으면 해당보기가 실제로로드되는 superview webview를 숨 깁니다. –
탭을 추가 할 때 새로운보기 컨트롤러를 작성해야합니까? – user961632
필요는 없습니다. 그것은 당신이 제공하고자하는 경험에 달려 있습니다. 각 탭에 대한 웹보기를 만들 수도 있지만 계층 구조의 동일한 수준 (동일한 수퍼 뷰)에 있어야하며 앞면으로 이동하면됩니다. 이것이 사파리가하는 일입니다. 옵션으로 답변을 입력하겠습니다. –