Android 4.x से शुरू, एंड्रॉयड टीम एंड्रॉयड टीम एक नया कार्य adjustWindowParamsLw() जिसमें यह FLAG_NOT_FOCUSABLE, FLAG_NOT_TOUCHABLE जोड़ सकते हैं और TYPE_SYSTEM_OVERLAY खिड़की के लिए FLAG_WATCH_OUTSIDE_TOUCH झंडे निकाल देंगे जोड़कर एक संभावित सुरक्षा समस्या तय।
यह TYPE_SYSTEM_OVERLAY विंडो आईसीएस प्लेटफ़ॉर्म पर कोई स्पर्श ईवेंट नहीं प्राप्त करेगी।
अपडेट किया गया: 2016/05/04 TYPE_TOAST Android 4.0 ~ 4.3 पर स्पर्श घटनाओं प्राप्त नहीं कर सकते। यह TYPE_SYSTEM_OVERLAY जैसा ही है। एंड्रॉइड 4.4+ पर, TYPE_TOAST को बहिष्कृत सूची से हटा दिया गया है, ताकि आप एंड्रॉइड 4.4+ डिवाइस पर टच इवेंट प्राप्त करने के लिए TYPE_TOAST का उपयोग कर सकें।
स्रोत
2012-02-27 08:38:03
अद्यतन जॉसवेयर के लिए धन्यवाद। लेकिन आपके तर्क के साथ भी मैं ओवरले पर कई स्पर्श घटनाओं को देखने में सक्षम नहीं हूं। मेरा मतलब है कि यदि आप स्क्रीन पर पहली उंगली रखते हैं और फिर दूसरा और फिर तीसरा (पिछला उठाने के बिना), तो हमें टच इवेंट प्राप्त करने में सक्षम होना चाहिए (यानी टच() को कॉल किया जाना चाहिए)। क्या यह वैसे भी संभव है? – Ravs
आपको 'TYPE_SYSTEM_OVERLAY' स्थिति में बहु-स्पर्श जानकारी प्राप्त नहीं होगी। एक बार जब आप 'TYPE_SYSTEM_ALERT' पर स्विच कर लें (यानी ओवरले के अंदर दबाने के बाद अपनी अंगुली उठाएं) तो आपको मल्टी-टच ईवेंट प्राप्त करना चाहिए। मैंने अपने नमूने में 'info.setText' कॉल में से प्रत्येक को '\ nPOINTERS:" + event.getPointerCount() 'जोड़ दिया है और पॉइंटर गिनती में कमी आएगी क्योंकि मैंने अपनी उंगलियों को छुआ/हटा दिया है। पहले के बाद नीचे, मैं केवल इस कदम की घटनाओं प्राप्त है, लेकिन सूचक गिनती अभी भी बदल दिया है। – jawsware
लेकिन क्या मैं चाहता हूँ वास्तव में TYPE_SYSTEM_OVERLAY साथ बहु स्पर्श हो रही है। है संभव है कि वैसे भी? – Ravs