zoukankan      html  css  js  c++  java
  • ios学习之UIWebView网页视图调整

    //先来一个可行的小Demo程序:结合searchBar的google搜索

    #import <UIKit/UIKit.h>
     
    @interface ViewController : UIViewController<UIWebViewDelegate,UISearchBarDelegate>{
        UIWebView *webView;
        UISearchBar *searchBar;
    }
     @end
     
    -(void)loadView{            
        [super loadView];    
        CGRect bounds = [[UIScreenmainScreen] applicationFrame];
        
        //UISearchBar    
        searchBar = [[UISearchBar alloc] initWithFrame:CGRectMake(0.0, 0.0, bounds.size.width, 48.0)];   
        searchBar.delegate = self;    
        searchBar.placeholder = @"Google";   //提示字符
        [self.view addSubview:searchBar];
        
        webView = [[UIWebViewalloc] initWithFrame:CGRectMake(0, 48, 320, 432 )];
        [webView setScalesPageToFit:YES];                    //自动缩放页面以适应屏幕
        [self.view addSubview:webView];                     //连接到一个现有的窗口上
        
    }
     
    -(void)searchBarSearchButtonClicked:(UISearchBar *)activeSearchBar{
        NSString *query = [searchBar.text stringByReplacingOccurrencesOfString:@" "withString:@"+"];//将“ ”空格替换成“+”
        NSURL *url = [NSURL URLWithString:[NSString stringWithFormat:@"http://www.google.com/search?q=%@",query]];
        NSURLRequest *request = [NSURLRequest requestWithURL:url];
        [webView loadRequest:request];//链接网络地址
    }

     //2.用webview显示内容,高度自适应

    //webview显示简介内容
        UIWebView * webviewinfomationDetails = [[UIWebView alloc] initWithFrame:GRAPH_SIZE_INTRODUCETEXT];
        webviewinfomationDetails.backgroundColor = [UIColor clearColor];
        [webviewinfomationDetails loadHTMLString:remark baseURL:nil];
        [webviewinfomationDetails setUserInteractionEnabled:NO];
        [(UIScrollView *)[[webviewinfomationDetails subviews] objectAtIndex:0] setBounces:NO];  
        [webviewinfomationDetails setScalesPageToFit:NO];     //yes:根据webview自适应,NO:根据内容自适应
    [webviewinfomationDetails setDelegate:self];
        [myScrollView addSubview:webviewinfomationDetails];
        [webviewinfomationDetails release];
    
    
    
    //另一种显示方式
    //定义WebView显示内容
        webviewinfomationDetails = [[UIWebView alloc] initWithFrame:GRAPH_SIZE_WEBVIEW];
        [webviewinfomationDetails setScalesPageToFit:NO];  //大小自适应
        NSString *path = [[NSBundle mainBundle] bundlePath];
        NSURL *base = [NSURL fileURLWithPath:path];
        [webviewinfomationDetails loadHTMLString:remark baseURL:base];//链接url
        [webviewinfomationDetails setUserInteractionEnabled:NO];//设置用户不可修改
        [informationDetailsScroll addSubview:webviewinfomationDetails];
        webviewinfomationDetails.delegate=self;
        [webviewinfomationDetails release];
    
    
    
    //webview委托   高度自适应
    -(void)webViewDidFinishLoad:(UIWebView *)webView
    {
        CGSize actualSize = [webView sizeThatFits:CGSizeZero];
        CGRect newFrame = webView.frame;
        newFrame.size.height = actualSize.height;
        webView.frame = newFrame;
        
        CGSize newsize=CGSizeMake(320, 356+webView.frame.size.height);
        myScrollView.contentSize=newsize;
    }
    花开花谢春不管,水暖水寒鱼自知.
  • 相关阅读:
    【应用】Linux内存调试工具:valgrind
    Python UnboundLocalError: local variable 'xxx' referenced before assignment 解决方法
    MYSQL连接时错误码2059解决办法
    Python encode()、decode()方法详解
    genymotion自动化使用
    论文数据集
    Native Apps、Web Apps和Hybrid Apps
    C# 中如何进行私有(private)函数测试
    Windows10 计划任务开始失败
    如果系统盘后面是恢复盘,如何扩充系统盘
  • 原文地址:https://www.cnblogs.com/taintain1984/p/3397298.html
Copyright © 2011-2022 走看看