2013-08-22 67 views
2

我有一個sqlite數據庫的歌曲的HTML字符串。調整webview嵌入滾動視圖內的大小

的ViewController
在此視圖控制器我有一個文本,並且其中所述用戶輸入樂曲編號的按鈕以及按鈕以發送到查詢的數據庫的請求。

SongDisplay
在此視圖控制器我有一個Web圖和標籤都嵌入在滾動視圖。我的網頁瀏覽功能禁用了滾動功能。

歌詞顯示和滾動視圖正確調整大小。然而網絡視圖沒有被調整大小,只顯示一些歌詞。我知道這是因爲我將滾動視圖和Web視圖設置爲不同的顏色。

頂部滾動視圖的問題 https://www.dropbox.com/s/8hgpi8nlwnca0v8/iOS%20Simulator%20Screen%20shot%20Aug%2022%2C%202013%2C%202.04.24%20PM.png

例這裏,滾動視圖的底部 https://www.dropbox.com/s/r8l8d82an613hec/iOS%20Simulator%20Screen%20shot%20Aug%2022%2C%202013%2C%201.57.14%20PM.png

這是我的代碼:

- (void)webViewDidFinishLoad:(UIWebView *)aWebView 
{ 
    CGRect frame = aWebView.frame; 
    frame.size.height = 1; 
    aWebView.frame = frame; 

    CGSize fittingSize = [aWebView sizeThatFits:CGSizeZero]; 

    frame.size = fittingSize; 

    [self.scroll setContentSize:fittingSize]; //scroll is the name of the scroll view 

    aWebView.frame = frame; 

    NSLog(@"size: %f" ,fittingSize.height); 
} 

如何獲取Web視圖和滾動視圖以調整大小?

+0

網頁視圖中ScrollViews不能很好工作。這很快可能會好起來。現在它會有問題。 – Cocoadelica

+0

我有同樣的問題( –

回答

0

問題本身固定在OS X小牛正式發佈。之前的問題可能是由於測試版本中的錯誤造成的。

0

我已經解決了通過加載內容這個問題裏面viewWillAppear內的DetailView 這樣

-(void)viewWillAppear:(BOOL)animated 
{ 
    [super viewWillAppear:animated]; 
    [self configureView];//<-- here i am call loadHTMLString 
} 

- (void)configureView 
{ 

    // disabling scroll for webview 
    if ([self.detailWebView respondsToSelector:@selector(scrollView)]) { 
     self.detailWebView.scrollView.scrollEnabled = NO; // available starting in iOS 5 
    } else { 
     for (id subview in self.detailWebView.subviews) 
      if ([[subview class] isSubclassOfClass: [UIScrollView class]]) 
       ((UIScrollView *)subview).scrollEnabled = NO; 
    } 

    // setting content 
    if (self.detailItem) { 
     self.detailTitle.text = self.detailItem->title; 
     //image scaling styles 
     NSString *[email protected]"<style type=\"text/css\">\n" 
     "img { \n" 
     " display: block;" 
     " float:none;" 
     " margin:0 auto;" 
     " max-width:100%;" 
     " height:auto;" 
     "} \n" 
     "</style>\n"; 

     [self.detailWebView loadHTMLString:[style stringByAppendingString:self.detailItem->content] baseURL:nil]; 
    } 
}