2013-06-05 7 views
6

मैं एक वेबव्यू एंड्रॉइड ऐप पर काम कर रहा हूं। मैं नेविगेट करने के लिए अपने ऐप में किसी समस्या को ठीक करने में असमर्थ हूं। मैं इस कोड का उपयोग कर रहा हूं और कोशिश की कि सभी संशोधनों को इस पर बनाया जा सके।एक वेबव्यू एंड्रॉइड ऐप में पीछे नेविगेशन

public class DeviceActivity extends Activity 
{ 
private WebView web; 
/** Called when the activity is first created. */ 
@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main_layout); 

    web = (WebView) findViewById(R.id.webView); 
    web.getSettings().setJavaScriptEnabled(true); 
    web.getSettings().setJavaScriptCanOpenWindowsAutomatically(false); 
    web.getSettings().setPluginsEnabled(false); 
    web.getSettings().setSupportMultipleWindows(false); 
    web.getSettings().setSupportZoom(false); 
    web.setVerticalScrollBarEnabled(false); 
    web.setHorizontalScrollBarEnabled(false); 

    //Our application's main page will be loaded 
    web.loadUrl("file:///android_asset/fbp/index.html"); 

    web.setWebViewClient(new WebViewClient() { 
      @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { 
       return false; 
      } 
      public void onBackPressed(){ 

    if (web.canGoBack()) { 
      web.goBack();  
    } 
    else { 
     //My exit alert code goes here.  

    } 
} 
     }); 

} 

} 

यह वापस नेविगेट नहीं करता है बल्कि इसके बजाय यह ऐप से बाहर निकलता है। किसी भी मदद की सराहना की जाएगी।

उत्तर

15

अपने Activity कोड में इस जोड़े (onCreate() में नहीं या कहीं और नेस्ट)

@Override 
public void onBackPressed() { 
    if (web.copyBackForwardList().getCurrentIndex() > 0) { 
     web.goBack(); 
    } 
    else { 
     // Your exit alert code, or alternatively line below to finish 
     super.onBackPressed(); // finishes activity 
    } 
} 

यह WebView इतिहास ढेर के माध्यम से वापस नेविगेट जाएगा जब तक यह खाली है और फिर डिफ़ॉल्ट क्रिया (प्रदर्शन इस मामले में यह गतिविधि खत्म करता है)।

आपको शायद अपने वेबव्यू क्लाइंट को shouldOverrideUrlLoading वापसी true पर सेट करना चाहिए या आप कोई लिंक लोड नहीं करेंगे।

+0

मदद के लिए धन्यवाद! :) – ashu

+0

निकास संवाद कोड डालने के दौरान मुझे समस्याएं आ रही हैं, यहां मुझे बाहर निकलने के संवाद में मदद कर सकते हैं? – ashu

+0

निश्चित रूप से - अपनी निर्दिष्ट समस्या के साथ एक नया प्रश्न खोलें, आपने जो कोशिश की है, जहां यह गलत हो रहा है, और यदि मैं कर सकता हूं तो मैं सहायता करूंगा। :) –

संबंधित मुद्दे