2010-06-04 2 views
1

테이블 뷰의 셀 (그룹화 된 스타일)에 UIWebView를 포함하고 싶습니다.다양한 높이의 테이블 뷰 셀에 긴 UIWebView 포함하기

웹보기는 길기 때문에 (화면보다 길기 때문에) 전체 길이를 표시하고 싶습니다. 따라서 웹보기 자체 내에서 스크롤 할 수는 없습니다.

------------------------ 
| a normal table cell | 
------------------------ 
| a normal table cell 2| 
------------------------ 
| a long webview  | 
| which doesn't scroll| 
| within itself  | 
|      | 
|      | 
|      | 
|      | 
|      | 
|      | 
|      | 
|      | 
|      | 
|      | 
|      | 
------------------------ 

웹보기는 그래서 어떻게이 (가) heightForRowAtIndexPath의 높이를 조정하기 위해 웹보기의 높이를 발견 할 수있는 다양한 높이가 있습니까? 그런 다음, 웹보기를로드 컨텐츠의 높이를 결정하기 위해 자바 스크립트 함수를 사용할 수

: 여기

답변

0

는 당신이 그것을 할,하지만 아래에있는 내주의를 볼 수있는 방법입니다. 그런 다음 [myWebView stringByEvaluatingJavaScriptFromString : ..]을 사용하여 높이를 가져올 수 있습니다.

여기에 문제가 있습니다. UIWebViews 상당히 느립니다. 테이블은 행의 높이를 알기 전까지는 표시 할 수 없습니다. 행의 높이를 알기 전까지는 테이블 셀을 가져올 테이블 셀을 결정하기 때문입니다. 따라서 테이블 뷰를 스크롤하는 것은 번쩍 거립니다. 왜냐하면 새 셀로 스크롤 할 때마다 높이를 계산해야하기 때문입니다. 두 가지 방법이 있습니다

당신이 취할 수

1)는 UITableCell에 포함 된있는 UIWebView를 사용하지 마십시오. 대신 UILabel을 사용하고 이것을 수행하기 위해 NSString 편리한 메소드 중 일부를 사용하여 높이를 결정하십시오.

2) 전체 테이블에 대해 UIWebView를 사용하십시오. 이렇게하면 테이블 뷰를 매우 면밀히 시뮬레이션 할 수 있으며 필요한 UI를 얻을 수 있습니다. 클릭 수를 처리하려면 UIWebViewDelegate에서 제공하는 URL로드 훅을 사용하십시오.

관련 문제