2012-03-03 2 views
0

RSS 피드에서 뉴스를 가져 오는 범용 iOS 앱을 개발 중입니다. 뉴스 피드의 본문은 HTML이므로 UIWebView에 표시합니다. 사용자가 링크를 클릭하면 원래 뉴스와 해당 뉴스 기사 내에서 클릭하는 링크에서 앞뒤로 이동할 수 있습니다.iOS UIWebView의 이전 기록을 취소하십시오.

iPhone에서 사용자가 개별 뉴스 기사의 ViewController를 취소하고 다른 뉴스 기사를 선택하면 UIWebView가 신선하고 완벽하게 작동합니다. 하지만 내 iPad 버전에서는 UISplitViewController를 사용하고 사용자가 왼쪽의 다른 뉴스 기사를 클릭하면 오른쪽 사이드 업데이트가 표시되지만 UIWebView는 새로 만들어지지 않습니다.

제 문제는 UIWebView는 사용자가 다른 뉴스 기사에서 클릭했을 수있는 다른 링크의 기록을 유지한다는 것입니다. 다음은

- 사용자가 --user는이 문서에서 링크를 클릭 첫번째 뉴스 기사 클릭 아이 패드 버전에 무슨 일의 흐름이다. WebView가 링크로 이동합니다. - 사용자가 다시 클릭합니다. WebView는 뉴스 기사의 원래 내용으로 이동합니다 - 사용자가 다른 뉴스 기사를 클릭합니다. -이 기사의 사용자 클릭 수. WebView가 링크로 이동합니다. - 사용자가 다시 클릭합니다. WebView는 첫 번째 뉴스 기사에서 클릭 한 링크로 이동합니다. - 사용자가이 기사의 원래 내용을 보려면 다시 클릭해야합니다.

UIWebView를 "깨끗한 슬레이트"로 시작하고 싶습니다. 새로운 뉴스 기사가 선택되었습니다.

답변

4

최악의 경우에 새로 만들면됩니다. UIWebViewDelegate 프로토콜로 누른 링크를들을 수 있고 링크가 눌려진 것을 볼 수 있으며, 단순히 웹보기를 다시 생성 할 수 있습니다.

+0

안녕하세요, 나는 그런 식으로 시도했지만, 내가 그것을 한 후에 내가 WebView의 통제를 잃어 버린 문제가 발생했습니다. 내가 한 것은 WebView를 릴리스 한 다음 webView = [UIWebView alloc] init];로 다시 만들었습니다. 그게 의미가 있습니까? 감사합니다 !!! – KevinM

+0

새로운'UIWebView' 만 만들 수는 없습니다. 당신은 먼저 슈퍼 뷰에서 오래된'UIWebView'을 제거하고 새'UIWebView'를 새로운 서브 뷰로 추가해야합니다. 이전 UIWebView 프레임을 다시 사용하고 새로운 UIWebView 프레임으로 설정하여 동일한 위치에 있는지 확인할 수 있습니다. – fisk

+0

오 예. 내가 이것을 보았다고 믿을 수 없어. 이것은 나를 위해 완벽하게 작동합니다. 나는 그것을 시도 할 것이다. 감사합니다! – KevinM

관련 문제