2010-11-19 8 views
13

विंडोज फोन 7 के लिए हैप्टीक फीडबैक को कैसे कार्यान्वित किया जाए, इस पर दस्तावेज़ीकरण कहां मिल सकता है? जब मैं बटन दबाया जाता हूं तो फोन चाहता हूं कि फोन कम कंपन करे।wp7 हैप्टीक फीडबैक

+0

मैं इस व्यवहार के लिए उपयोगकर्ता को वास्तव में रुचि रखने में रूचि रखूंगा। ऐप के आधार पर और आवृत्ति बटन प्रेस की आवश्यकता होती है, एक उपयोगकर्ता के रूप में यदि मैं एक बटन को छूने पर हर बार कंपन करता हूं तो मैं बहुत सावधान रहूंगा। यह एक ऐसा व्यवहार नहीं है जिसे मैंने पहले कहीं देखा है। क्या बटन प्रेस पर दृश्य प्रतिक्रिया प्रदान करना संभव नहीं है? कंपन डिवाइस से थोड़ी भिन्न होती है - क्या इससे कोई फर्क पड़ता है? मैं उपयोगकर्ता को इस व्यवहार को अक्षम करने का एक तरीका देने की भी सिफारिश करता हूं। –

+0

ठीक है, मेरे सैमसंग फोकस पर "हार्डवेयर" बटन के लिए डिफ़ॉल्ट व्यवहार यह है कि जब मैं उन्हें दबाता हूं (बैक, विंडोज कुंजी, और बिंग) तो वे चर्चा करते हैं। शायद ऐसा इसलिए है क्योंकि वे फोकस पर कैपेसिटिव बटन हैं ... लेकिन मुझे यह वास्तव में पसंद है कि यह क्या लायक है :-) –

+0

मुझे हाथ नहीं मिला है (कार्यालय में छोड़ दिया गया है) लेकिन मैंने सोचा कि वे केवल कंपन पैदा करते हैं आपने ऐसा कुछ करने की कोशिश की जिसे आप नहीं कर सके (यानी वापस नेविगेट करने की कोशिश की गई थी जब वापस नेविगेट करने के लिए कहीं भी नहीं था)। कंपन इंगित करता है और अपवाद, एक मानक बटन प्रेस नहीं। आपके द्वारा संदर्भित बटन वास्तव में हार्डवेयर बटन हैं। आपके प्रश्न से मैंने सोचा था कि आप इसे सभी मुलायम कुंजी प्रेस के लिए करने की कोशिश कर रहे थे। –

उत्तर

18

मूल रूप से सब आप फ़ोन कंपन करने की जरूरत है यह है:

VibrateController.Default.Start(TimeSpan.FromMilliseconds(200)); 

मैं के रूप में यह यह काफी अच्छी तरह से बताते हैं this blog पढ़ने के लिए सुझाव देते हैं। other chapters भी दिलचस्प हैं अगर आपने उन्हें पहले से ही नहीं देखा है।

+0

मैंने अभी तक उस ब्लॉग को नहीं देखा था। एक अच्छा संसाधन की तरह लग रहा है! सहायता के लिए धन्यवाद! – BigPete

2

शायद आप "GamePad"
http://msdn.microsoft.com/en-us/library/microsoft.xna.framework.input.gamepad.setvibration.aspx

मैं अगर आप इसे Silverlight में काम करने के लिए, आप इसे करने की कोशिश के बाद टिप्पणी कृपया मिल जानने के लिए उत्सुक हो जाएगा के कंपन सेट करने के लिए XNA एपीआई का उपयोग कर सकते हैं: -)

+1

आह, कुछ सेकंड बहुत देर हो चुकी है ... महान जवाब फ्रांसेस्को :-) –

5

मैंने अपने बटन के लिए एक कंपन कक्षा बनाई ताकि इसे कॉल करना आसान हो। मेरा कोड यहाँ है। अगर आपको पसंद है तो कृपया मुझे +1 दें।

public class Vibration 
    { 
     public static void VibrateOnButtonPress() 
     { 
      Microsoft.Devices.VibrateController.Default.Start(TimeSpan.FromMilliseconds(50)); 
      System.Windows.Threading.DispatcherTimer timer = new System.Windows.Threading.DispatcherTimer(); 
      timer.Interval = new TimeSpan(0, 0, 0, 0, 200); 
      timer.Tick += (tsender, tevt) => 
      { 
       var t = tsender as System.Windows.Threading.DispatcherTimer; 
       t.Stop(); 
       Microsoft.Devices.VibrateController.Default.Stop(); 
      }; 
      timer.Start(); 
     } 
    }