2012-11-03 4 views
0

간단한 앱을 만들어 Xcode를 배우려고합니다. 하지만 시간 (일)의 순을 찾고 내가 다른의 ViewController에있는 UIWebView를 열고 버튼을 만드는 방법 나는 그것을 파악하지 못할 : 먼저 내가 당신에게 내가 준비 몇 가지 코드를 보여주지 S버튼을 누르고 다른 ViewController에서 URL 열기

을 :

몇 개의 버튼을 가지고 있는데 각각의 메인 스토리 보드는 영국, 캘리포니아 및 DK와 같은 일부 국가 코드입니다.

내가 그 버튼 중 하나를 눌러 I이 같은 IBAction를이 :

- (IBAction)ButtonPressed:(UIButton *)sender { 
// Google button pressed 

NSURL* allURLS; 

if([sender.titleLabel.text isEqualToString:@"DK"]) { 

    // Create URL obj 

    allURLS = [NSURL URLWithString:@"http://google.dk"]; 



}else if([sender.titleLabel.text isEqualToString:@"US"]) 

{ 

    allURLS = [NSURL URLWithString:@"http://google.com"]; 

}else if([sender.titleLabel.text isEqualToString:@"CA"]) 

{ 

    allURLS = [NSURL URLWithString:@"http://google.ca"]; 

} 
NSURLRequest* req = [NSURLRequest requestWithURL:allURLS]; 

[myWebView loadRequest:req]; 

} 내 기타의 ViewController라는 이름의 myWebView에이 열려있는 UIWebView을 어떻게

?

것은 잃어버린 사람 도와주세요 : D

+0

를 선언 U가 밀어 하시겠습니까 다른 뷰 컨트롤 그렇지? 그렇다면 예보기 컨트롤러에서 문자열 변수를 선언하고이 URL을 해당 변수에 전달합니다. 그런 다음 ViewDidLoad에 문자열 url을로드하십시오. –

+0

@Suresh 어떻게하면됩니까?, 저는 Xcode에서 새로운 n00b입니다. – D79

답변

0

글쎄, 당신이 firstViewController 이미 설계 및 코딩 한, 지금 당신은 또한 같은 세터 NSString 변수가, IB 그 자체에 바인더 제본 UIWebView와 secondViewController를 만들했습니다 strUrl을 secondViewController를 밀거나 제시 할 때 전달해야하며 secondViewController의 에서 viewDidLoad에 할당해야합니다. See my answer about how to pass a NSString? 또한 UIWebView에는 URL 요청을 처리하는 데 사용할 수있는 대리인 메서드 (What's delegate & datasource methods? - Apple Doc)가 있습니다.

delegateUIWebView입니다. 사용하려면 selfUIWebView 대표자를 입력해야합니다.

- (void)webViewDidStartLoad:(UIWebView *)webView; 
- (void)webViewDidFinishLoad:(UIWebView *)webView; 
- (void)webView:(UIWebView *)webView didFailLoadWithError:(NSError *)error; 
+0

완전한 예를 들어 주시겠습니까? – D79

+0

* Suresh * 대답을 확인하십시오, 그는 완전한 예를 든 것입니다! :) – Hemang

0

firstViewController.m

- (IBAction)ButtonPressed:(UIButton *)sender { 
    NSURL* allURLS; 
    //get your URL 
    secondViewControlelr *secondView=[[secondViewControlelr alloc]init]; 
    second.urlToLoad=allURLS; 
    [self.navigationController pushViewController:secondView animated:YES]; 
    } 

secondViewControlelr.h // URL을 설정하고 부동산

NSURL *urlToLoad; 

secondViewControlelr.m

- (void)viewDidLoad 
{ 
     myWebView=[[UIWebView alloc]initWithFrame:CGRectMake(0, 0, 320, 460)]; 
     [self.view addSubview:myWebView]; 
      NSURLRequest *urlReq=[NSURLRequest requestWithURL:self.urlToLoad cachePolicy:NSURLCacheStorageNotAllowed timeoutInterval:10]; 
    [myWebView loadRequest:urlReq]; 

} 
+0

괜찮아요, 그 tryed 내 코드에 대한 편집,하지만 second.urltoload = allURLS; 오류는 "선언되지 않은 식별자 '초 사용' – D79

+0

괜찮아요.하지만 내 secondviewcontroller.h 파일에 입력 할 내용을 이해하지 못합니다? – D79

관련 문제