2012-09-06 16 views
5

मेरे पास एक वेब व्यू है। WebView टेक्स्ट, छवियों, बटन इत्यादि के साथ एचटीएमएल दिखाता है
मैं कुछ चीजें बनाना चाहता हूं।

1) वह उपयोगकर्ता वेब व्यू

2 में टेक्स्ट का चयन नहीं कर सकता है 2) बटन के क्लिक और लंबे क्लिक के समान व्यवहार।एंड्रॉइड वेबव्यू सामग्री चयन योग्य नहीं

मैं अगले बातें मेरी समस्याओं को हल करने के लिए किए गए: सब से पहले, मैं करने के लिए html पृष्ठ शैली कहा:

body { 
    ... 
    -webkit-user-select: none; 
    -webkit-touch-callout: none; 
    ... 
} 

लेकिन यह मेरी मदद नहीं की। यह समाधान सभी एंड्रॉइड पर काम नहीं करता था।
तो मैंने वेब व्यू में टच श्रोता जोड़ने की कोशिश की।

श्रोता का कोड:

webView.setOnTouchListener(new OnTouchListener() { 

    private float prevX; 
    private float prevY; 

    @Override 
    public boolean onTouch(View v, MotionEvent event) { 

     boolean handled = true; 
     if (MotionEvent.ACTION_DOWN == event.getAction()) { 
      prevX = event.getX(); 
      prevY = event.getY(); 
     } else if (MotionEvent.ACTION_UP == event.getAction()) { 
      if (Math.abs(event.getX() - prevX) < 50 
        && Math.abs(event.getY() - prevY) < 50) { 
       handled = (event.getEventTime() - event 
         .getDownTime()) > 200; 
      } 
     } 

     Log.d("-------------------------------------------------", ""+handled); 

     return handled; 
    } 

}); 

लेकिन यह या तो काम नहीं किया, मैंने कुछ गलत कर दिया हो सकता है?

webView.setOnLongClickListener(new OnLongClickListener() { 

    @Override 
    public boolean onLongClick(View v) { 
     v.performClick(); 
     return true; 
    } 
}); 

यह समाधान केवल पहली समस्या का हल: उसके बाद मैं लंबे क्लिक श्रोता जोड़ने की कोशिश की।

तो, मैं गलत कहां गया?

+0

क्या आप चाहते हैं कि आपका वेबदृश्य क्लिक करने योग्य नहीं है या कोई और नहीं ?? कृपया विस्तृत करें ... –

+0

मैं चाहता हूं कि वह वेबदृश्य क्लिक करने योग्य हो, लेकिन HTML पृष्ठ के कुछ हिस्सों को क्लिक करने योग्य नहीं होना चाहिए। मैं नहीं चाहता कि उपयोगकर्ता एचटीएमएल पेज में पाठ के कुछ हिस्सों की प्रतिलिपि बना सके। लेकिन एचटीएमएल पेज में मेरे पास इनपुट और बटन हैं ... – yugico

+0

व्याकरण में त्रुटियों के सुधार के लिए धन्यवाद ... – yugico

उत्तर

0

addJavascriptInterface() का उपयोग करने का प्रयास करें; WebView का। गतिविधि का एक आंतरिक वर्ग बनाएँ। कक्षा एंड्रॉइड और आपकी जेस्क्रिप्ट के बीच एक इंटरफ़ेस है। इसके लिए आपको जेस्क्रिप्ट का उपयोग करना होगा।

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