//先來一個可行的小Demo程序:結合searchBar的google搜索web
#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; }