2012-09-28 2 views
0

이것은 아마도 미친 질문이지만 iOS 앱에서 UIButton을 사용하려고하고 있는데 클릭하면 숨겨진 UIWebView에로드 된 웹 페이지의 하이퍼 링크를 차례로 클릭하게됩니다.UIButton을 사용하여 UIWebView에서 하이퍼 링크를 클릭 할 수 있습니까?

링크는 자바 스크립트 호출에 의해 트리거 될 수도 있습니다. UIButton에서 UIWebView까지 가능한지 확실하지 않습니다.

감사합니다. Aaron

답변

0

대신 제출 버튼이있는 HTML 양식을 사용하는 것이 좋습니다. 나는 이것을했고 훨씬 더 간단합니다. 다음과 같이하십시오 :

- (NSString *)makeSubmitForm 
    { 
     NSMutableString *ms = [NSMutableString string]; 

     [ms appendString:@"<p><form action=\"formentry\">"]; 
     [ms appendString:@"<input style=\"submit\" type=\"submit\" value=\"Submit\" />"]; 
     [ms appendString:@"<input type=\"hidden\" name=\"fieldtype\" value=\"submit\" />"]; 
     [ms appendString:@"</form>"]; 

     return ms; 
    } 

그런 다음 UIWebViewDelegate에서 찾아보십시오. 아래의 코드는을 수행하고 또한 (텍스트 필드 입력 등)이있는 경우 다른 형태의 항목 물건

- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType 
    { 
     NSString *surl = [[request URL] absoluteString]; 

     NSRange ner = [surl rangeOfString:@"formentry?"]; 

     if (ner.location != NSNotFound){ 
      NSString *argstr = [surl substringFromIndex:ner.location+ner.length]; 
      NSMutableDictionary *md = [NSMutableDictionary dictionary]; 
      NSArray *args = [argstr componentsSeparatedByString:@"&"]; 
      for (int i=0; i < args.count; i++){ 
       NSString *keyval = [args objectAtIndex:i]; 
       NSArray *pair = [keyval componentsSeparatedByString:@"="]; 
       [md setObject:[pair objectAtIndex:1] forKey:[pair objectAtIndex:0]]; 
      } 
      [MyDelegate tellItWhatever:md]; 
     } 

     return NO; 
    } 
관련 문제