2013-04-24 2 views
2

У меня есть вопрос. В Xcode У меня есть ViewController с вложением View>ScrollView, а внутри Scrollview - UIWebView.iOS: настройка высоты UIWebView - странное поведение

Приложение считывает некоторые данные XML и вставляет отформатированный текст в UIWebView. После того, как UIWebView-Element - еще один элемент, так что я должен динамически регулировать высоту UIWebView.

После загрузки изображения все в порядке, но когда я нажимаю на экран, размер изображения увеличивается до высоты его раскадровки.

Почему?

- (void)webViewDidFinishLoad:(UIWebView *)aWebView 
{ 
aWebView.scrollView.scrollEnabled = NO; // Property available in iOS 5.0 and later 
CGRect frame = aWebView.frame; 

frame.size.width = 280;  // Your desired width here. 
frame.size.height = 1;  // Set the height to a small one. 

aWebView.frame = frame;  // Set webView's Frame, forcing the Layout of its embedded  scrollView with current Frame's constraints (Width set above). 

frame.size.height = aWebView.scrollView.contentSize.height; // Get the corresponding   height from the webView's embedded scrollView. 

aWebView.frame = frame;  // Set the scrollView contentHeight back to the frame itself. 

NSLog(@"size: %f, %f", aWebView.frame.size.width, aWebView.frame.size.height); 

// Position URL Label 
CGRect frame_label = fachmesseDetailWebsite.frame; 
NSLog(@"x: %f", frame_label.origin.x); 
NSLog(@"y: %f", frame_label.origin.y); 
frame_label.origin.y=aWebView.frame.size.height+115;//pass the cordinate which you want 
frame_label.origin.x= 20;//pass the cordinate which you want 
fachmesseDetailWebsite.frame= frame_label; 
NSLog(@"x: %f", frame_label.origin.x); 
NSLog(@"y: %f", frame_label.origin.y); 

} 

ответ

1

всякий раз, когда вы меняете кадр, который вы должны перезагрузить WebView только тогда WebView рамки изменит то, что вы положили другим мудрым это не влияет на WebView.

[webview reload]; 

EDIT: это один работает

UIWebView *web=[[UIWebView alloc]initWithFrame:CGRectMake(0, 0, 100, 100)]; 

    NSString* html = [NSString stringWithFormat:@"<html><head><style>a { color: #db5226; text-decoration: none; font-weight: bold; } body { padding: 0; margin: 0; font-size:45px;font-family: Helvetica;text-align:left; color:black; } </style></head<body>%@</body></html>",@"helow"]; 
    [web loadHTMLString:html baseURL:nil]; 
    [self.view addSubview:web]; 
+0

Спасибо. Вот как я добавляю содержимое в веб-просмотр: 'NSString * html = [NSString stringWithFormat: @" % @ ", item.description]; [self.fachmesseDetailText loadHTMLString: html baseURL: nil]; ' Когда я перезагружаю веб-просмотр, каждый смысл пуст ... –

+0

см. Этот учебник http://www.roseindia.net/answers/viewqa/Mobile-Applications/16673 -UIWebview-load-url.html – Balu

+0

после проверки .. – Balu

Смежные вопросы