2011-09-21 10 views
5

मैं निम्नलिखित कोड के साथ नीचे की मात्रा पर एक लंबे कुंजी दबाएँ करने के लिए प्रतिक्रिया करने के लिए अपने एप्लिकेशन पाने के लिए कोशिश कर रहा हूँ पकड़ने के लिए कोशिश कर रहा है onKeyPress() वॉल्यूम डाउन के लिए ईवेंट, और onKeyLongPress() कभी भी कॉल नहीं किया जाता है। मेरा इरादा वॉल्यूम को नीचे छोड़कर "छोटा" प्रेस छोड़ना है, और मेरा ऐप वॉल्यूम लंबी प्रेस पर अलग-अलग प्रतिक्रिया देता है।
कोई भी बता सकता है कि मैं क्या खो रहा हूं?वॉल्यूम onKeyLongPress() काम नहीं कर रहा

उत्तर

12

आप लगभग वहां हैं। आपको ऑनप्रेस हैंडलर में एक ही महत्वपूर्ण घटना का पता लगाने की आवश्यकता है और इसे ट्रैक करना शुरू करें ताकि लंबी प्रेस काम कर सके। यहां आपको आवश्यक कोड दिया गया है:

@Override 
public boolean onKeyDown(int keyCode, KeyEvent event) { 
    if (keyCode == KeyEvent.KEYCODE_VOLUME_DOWN) { 
     event.startTracking(); 
     return true; 
    } 
    return super.onKeyDown(keyCode, event); 
} 
+0

कोई विचार यह है कि मैं इस महत्वपूर्ण घटना को एंड्रॉइड वॉल्यूम मैनेजर पर आगे बढ़ने और ऑडियो बदलने से कैसे पकड़ सकता हूं? – Radu

+1

@ राडू: परीक्षण नहीं किया गया लेकिन: "सच वापसी" के बारे में क्या; आपके लंबे प्रेस कॉलबैक में? प्रचार को रोकना चाहिए। लेकिन फिर, सुनिश्चित नहीं है कि यह वास्तव में काम कर सकता है या नहीं। –

+0

@ बेंजामिनपेट्टे आप सही हैं – Lukas1

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