자바 스크립트를 webView에 삽입해볼 수 있습니다. 이 코드는 iPhone에서도 작동하지만 페이지가 완전히로드 된 경우에만 작동합니다. http://www.javascriptsource.com/page-details/disable-text-selection.html 또는 http://solidlystated.com/scripting/proper-way-to-disable-text-selection-and-highlighting/
은 선택 시작하는 것처럼 당신이 해제 자바 스크립트를 주입 곳 proably이 비슷한 설정을 사용해야합니다 당신을로드 여전히 페이지가 절반을로드 할 때 제대로 작동하도록하려면 또는 . http://www.icab.de/blog/2010/07/11/customize-the-contextual-menu-of-uiwebview/
마지막으로 생각한 것 중 하나가 선택기 @selector (select :)를 비활성화 된 선택기 목록에 추가하여 테스트 했습니까?
편집 : 그래, HTML 페이지가 아닌 PDF를 표시하려면 어떻게해야할까요?
설정
있는 ScrollView에 웹뷰를 넣어;
ScrollView의 : delegate을 self로 설정합니다. 1.0으로 확대/축소하고 원하는대로 최대 확대/축소합니다.
weView로드가 끝난 후. webView에서 첫 번째 UIScrollView를 검색합니다 (우리는 스캔하여 iOS 버전 이후에 중단되지 않아야 함). UIWebViews 프레임을 scrollViews 크기로 설정하십시오. 그리고 scrollView의 contentSize를 webViews contentSize (또는 지금까지는 프레임)로 설정하십시오.
-(void)setup{
//Get the webView's first scrollView (the one all the content is in).
UIScrollView *webViewContentView;
for (UIView *checkView in [webView subviews]) {
if ([checkView isKindOfClass:[UIScrollView class]]) {
webViewContentView = (UIScrollView*)checkView;
break;
}
}
webView.frame = CGRectMake(0, 0, webViewContentView.contentSize.width, webViewContentView.contentSize.height);
scrollView.contentSize = webViewContentView.contentSize;
scrollView.delegate = self;
}
확대/축소를 사용하려면 scrollViews 대리자에서 추가 메서드를 추가해야합니다.
-(UIView *) viewForZoomingInScrollView:(UIScrollView *)scrollView {
return webView;
}
그리고 당신은 샘플 프로젝트 http://www.multiupload.com/P8SOZ4NW6C을 (그것은이 엑스 코드 4 프로젝트) 다운로드 할 수 있습니다.
참고는 '웹보기가 일을 다시 렌더링을 알고하지 않기 때문에 훨씬을 확대하면 줌은 웹보기의 내용을 pixelates, 당신은 링크를 클릭 (하지만 할 수없는 원인의 PDF로 그 shouldn 문제는 아닙니다.)
편집 2 : 더 나은 방법
이 글을 쓰는 때문에 나는 또한 픽셀 화 문제를 해결해야 훨씬 간단하고 쉬운 방법을 깨달았다.
-(void)removeInput{
UIScrollView *webViewContentView;
for (UIView *checkView in [webView subviews]) {
if ([checkView isKindOfClass:[UIScrollView class]]) {
webViewContentView = (UIScrollView*)checkView;
break;
}
}
for (UIView *checkView in [webViewContentView subviews]) {
checkView.userInteractionEnabled = NO;
}
}
이제
만 줌 기능, 스크롤, 요법은 ... 여전히 작동합니다 (당신이 확대되면 페이지가 pixelating 오히려 다시 렌더링한다) 의미하는있는 UIScrollView 자체와 상호 작용 할 수 있어야하지만 당신은 '수 t 모든 텍스트를 선택하거나 아무것도 입력합니다.이 방법에 대한 또한
뭔가를 그 this list of UIWebView subViews에 따라이 이를 설정할 수있을되는 페이지가이 페이지를로드 완료 후보다는로드를 시작하기 전에.
다른 사람이 동일한 (또는 비슷한) 콘텐츠를 제공하는 사람이 누구도 확신하지 않는 한이 "기능"은 사람들을 앱에서 멀리 몰아내는 역할 만합니다. –
@ Franci Penov : 사용자가 선택 포인터를 나타나지 않게하려는 많은 경우를 생각해 볼 수 있습니다. 실제로, 뭔가를 읽고 천천히 스크롤 할 때 (손가락을 내려 놓고, 읽고, 드래그하고, 결국 선택하지만 스크롤을 원할 때) 사용자 경험으로 종종 엉망이됩니다. – Kalle
@Franci : 나는 아무도 그런 내용을 제공하지 않을 것입니다. 앱은 특정 공개로 제한된 콘텐츠를 표시하기 위해 만들어졌습니다. 이 "기능"은 고객의 요구 사항입니다. 그렇지 않으면 확실히 그 점을 신경 쓰지 않을 것입니다. @Kalle : 전적으로 의견에 동의합니다. –