2009-09-08 10 views
5

मैं एक वेब व्यू की वर्तमान स्क्रॉल स्थिति को स्टोर करना चाहता हूं और जब मैं एप्लिकेशन को फिर से लॉन्च करता हूं। मैं फिर से उस स्क्रॉल स्थिति को पुनर्स्थापित करना चाहता हूं ..iphone UIWebView वर्तमान स्क्रॉल स्थिति स्टोर करते हैं?

यह कैसे करें ???

उत्तर

6

UIWebView UIScrollView का उप-वर्ग नहीं है, इसलिए आप इसे "सामान्य" तरीका नहीं कर सकते हैं।

इस जावास्क्रिप्ट समाधान की तरह लग रहा है कि तुम क्या जरूरत है क्या करेंगे: http://shortdivision.wordpress.com/2008/10/14/going-back-to-the-last-place-you-were-in-a-uiwebview/

5

के बाद से iOS5 UIWebViewscrollView संपत्ति है। आप प्रकार CGPoint इस तरह परिभाषित के चर का उपयोग कर सकते हैं:

CGPoint _scrollPosition; 

तो यह प्रारंभ:

_scrollPosition = CGPointMake(0, 0); 

जहाँ आप वर्तमान स्थिति उपयोग स्टोर करने के लिए की जरूरत है:

_scrollPosition = _webView.scrollView.contentOffset; 

लागू UIWebViewDelegate प्रोटोकॉल और -(void)webViewDidFinishLoad:(UIWebView *)webView के अंदर स्थिति को पुनर्स्थापित करने के लिए कोड जोड़ें:

- (void)webViewDidFinishLoad:(UIWebView *)webView 
{ 
    // .... your other code here ... 

    if (0 < _scrollPosition.y) { 
     _webView.scrollView.contentOffset = _scrollPosition; 
     _scrollPosition = CGPointMake(0, 0); 
    } 
} 
संबंधित मुद्दे