2013-08-22 68 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]; 
    } 
}