2016-09-09 4 views
0

J'ai un webview et j'ai envoyé une URL. L'affichage de la page est correct, mais je ne peux pas interagir avec la page affichée. Je ne peux pas cliquer sur les boutons, j'ai juste un recto ... Avez-vous une idée du problème?Android Webview Cliquez sur

Mon code:

protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_web); 
    WebView myWebView = (WebView) findViewById(R.id.webview); 
    myWebView.loadUrl("www.google.com");  
    myWebView.setWebViewClient(new WebViewClient()); 
} 

Répondre

3

Vous pouvez ajouter onclick WebView avec la méthode suivante:

webView.setOnTouchListener(new View.OnTouchListener() { 

     public final static int FINGER_RELEASED = 0; 
     public final static int FINGER_TOUCHED = 1; 
     public final static int FINGER_DRAGGING = 2; 
     public final static int FINGER_UNDEFINED = 3; 

     private int fingerState = FINGER_RELEASED; 


     @Override 
     public boolean onTouch(View view, MotionEvent motionEvent) { 

      switch (motionEvent.getAction()) { 

       case MotionEvent.ACTION_DOWN: 
        if (fingerState == FINGER_RELEASED) fingerState = FINGER_TOUCHED; 
        else fingerState = FINGER_UNDEFINED; 
        break; 

       case MotionEvent.ACTION_UP: 
        if(fingerState != FINGER_DRAGGING) { 
         fingerState = FINGER_RELEASED; 

         // Your onClick codes 
         Toast.makeText(WebActivity.this,"Click Detected",Toast.LENGTH_LONG).show();    

        } 
        else if (fingerState == FINGER_DRAGGING) fingerState = FINGER_RELEASED; 
        else fingerState = FINGER_UNDEFINED; 
        break; 

       case MotionEvent.ACTION_MOVE: 
        if (fingerState == FINGER_TOUCHED || fingerState == FINGER_DRAGGING) fingerState = FINGER_DRAGGING; 
        else fingerState = FINGER_UNDEFINED; 
        break; 

       default: 
        fingerState = FINGER_UNDEFINED; 

      } 

      return false; 
     } 
    }); 

S'il y a un bouton à l'intérieur WebView, la page Web que vous affichiez à l'intérieur du WebView sera gérer cela.Vous ne pouvez pas obtenir ce rappel.

+0

une ttoast sur la partie // Votre code de onClick dans le code ci-dessus. – kgandroid

+0

Je ne peux pas cliquer dans ma vue web, j'utilise votre méthode mais cela ne fonctionne pas:/ – Guillaume

+0

collez votre code dans pastebin et donnez-moi le lien ... laissez-moi voir – kgandroid

0

essayer ce code, je pense que cela va fonctionner: affichage

WebSettings webSettings = myWebView.getSettings(); 
webSettings.setJavaScriptEnabled(true);