यह उदाहरण दर्शाता है कि कोटलिन का उपयोग करके Android में बाएं/दाएं और ऊपर/नीचे के बीच स्वाइप दिशा का पता कैसे लगाया जाए।
चरण 1 - एंड्रॉइड स्टूडियो में एक नया प्रोजेक्ट बनाएं, फाइल ⇒ न्यू प्रोजेक्ट पर जाएं और एक नया प्रोजेक्ट बनाने के लिए सभी आवश्यक विवरण भरें।
चरण 2 - निम्न कोड को res/layout/activity_main.xml में जोड़ें।
"सच" एंड्रॉइड:लेआउट_मार्जिनटॉप ="70 डीपी" एंड्रॉइड:पृष्ठभूमि ="# 008080" एंड्रॉइड:पैडिंग ="5 डीपी" एंड्रॉइड:टेक्स्ट ="ट्यूटोरियल पॉइंट" एंड्रॉइड:टेक्स्टकलर ="# एफएफएफ" एंड्रॉइड:टेक्स्ट साइज ="24 एसपी" एंड्रॉइड:टेक्स्ट स्टाइल =" बोल्ड " /> <टेक्स्ट व्यू एंड्रॉइड:लेआउट_विड्थ ="मैच_पेरेंट" एंड्रॉइड:लेआउट_हाइट ="रैप_कंटेंट" एंड्रॉइड:लेआउट_सेंटरइनपेरेंट ="ट्रू" एंड्रॉइड:टेक्स्ट ="स्वाइप टू डिटेक्ट स्वाइप इवेंट" एंड्रॉइड:टेक्स्ट एलाइनमेंट ="सेंटर" एंड्रॉइड:टेक्स्ट कलर ="@android:color/holo_purple" android:textSize="24sp" android:textStyle="bold" />
चरण 3 - निम्न कोड को src/MainActivity.kt में जोड़ें
आयात करें ) {var onSwipeTouchListener:OnSwipeTouchListener? =नल ओवरराइड मज़ा onCreate(savedInstanceState:Bundle?) {super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) शीर्षक ="KotlinApp" onSwipeTouchListener =OnSwipeTouchListener (यह, FindViewById(R.id.relativeLayout)) टच लिस्टनर इंटरनल स्वाइप कंस्ट्रक्टर (सीटीएक्स:कॉन्टेक्स्ट, मेन व्यू:व्यू):व्यू। ऑन टच लिस्टनर {निजी वैल जेस्चर डिटेक्टर:जेस्चर डिटेक्टर निजी संस्करण संदर्भ:संदर्भ निजी लेटिनिट संस्करण ऑनस्वाइप:ऑनस्वाइप लिस्टनर इनिट {जेस्चर डिटेक्टर =जेस्चर डिटेक्टर (सीटीएक्स, जेस्चर लिस्टनर ()) मेनव्यू।सेटऑन टच लिस्टनर (यह) संदर्भ =ctx} फन ऑन टच (v:व्यू, इवेंट:MotionEvent) को ओवरराइड करें:बूलियन {रिटर्न जेस्चरडिटेक्टर.ऑनटचएवेंट (इवेंट)} निजी साथी ऑब्जेक्ट {निजी कॉन्स्ट वैल स्वाइप थ्रेशोल्ड =100 प्राइवेट कॉन्स्ट वैल स्वाइप वेलोसिटी थ्रेशोल्ड =100} इनर क्लास जेस्चर लिस्टनर:जेस्चर डिटेक्टर। सिंपलऑन जेस्चर लिस्टनर () { ऊपर राइड फन ऑन डाउन (ई:मोशनइवेंट):बूलियन {रिटर्न ट्रू} ओवरराइड फन ऑनफ्लिंग (ई 1:मोशनइवेंट, ई 2:मोशनइवेंट, वेलोसिटी एक्स:फ्लोट, वेलोसिटी वाई:फ्लोट):बूलियन { वर परिणाम =गलत कोशिश {वैल डिफवाई =ई 2. वाई - e1.y वैल diffX =e2.x - e1.x अगर (abs (diffX)> abs (diffY)) {if (abs (diffX)> स्वाइप थ्रेशोल्ड &&abs (velocityX)> स्वाइप वेलोसिटी थ्रेसहोल्ड) {if (diffX> 0) { onSwipeRight ()} और {onSwipeLeft ()} परिणाम =सत्य}} और अगर (abs (diffY)> स्वाइप थ्रेशोल्ड &&abs (वेग)> स्वाइप वेलोसिटी थ्रेशोल्ड) {अगर (diffY> 0) { onSwipeBottom ()} और { onSwipeTop ()} परिणाम =सत्य} } पकड़ें (अपवाद:अपवाद) {अपवाद। } स्वाइप लेफ्ट () पर आंतरिक मज़ा (संदर्भ, "स्वाइप लेफ्ट", टोस्ट। LENGTH_SHORT)। शो () this.onSwipe.swipeLeft () } आंतरिक मज़ा ऑन स्वाइपटॉप () { Toast.makeText (संदर्भ, "स्वाइप अप" , Toast.LENGTH_SHORT).show() this.onSwipe.swipeTop() } आंतरिक मज़ा onSwipeBottom() { Toast.makeText(context, "Swiped Down", Toast.LENGTH_SHORT).show() this.onSwipe.swipeBottom() } आंतरिक इंटरफ़ेस ऑनस्वाइप लिस्टनर {फन स्वाइपराइट () फन स्वाइपटॉप () फन स्वाइपबॉटम () फन स्वाइप लेफ्ट ()}}}}चरण 4 - निम्न कोड को androidManifest.xml में जोड़ें
<एप्लिकेशन android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:roundIcon="@mipmap/ic_launcher_round" android:supportsRtl="true" android) :theme="@style/AppTheme"> <गतिविधि android:name=".MainActivity"> <इरादे-फ़िल्टर> <कार्रवाई android:name="android.intent.action.MAIN" /> <श्रेणी android:name=" android.intent.category.LAUNCHER" />
आइए अपना एप्लिकेशन चलाने का प्रयास करें। मुझे लगता है कि आपने अपने वास्तविक Android मोबाइल डिवाइस को अपने कंप्यूटर से कनेक्ट कर लिया है। एंड्रॉइड स्टूडियो से ऐप चलाने के लिए, अपने प्रोजेक्ट की गतिविधि फाइलों में से एक को खोलें और रन पर क्लिक करें टूलबार से आइकन। एक विकल्प के रूप में अपने मोबाइल डिवाइस का चयन करें और फिर अपने मोबाइल डिवाइस की जांच करें जो आपकी डिफ़ॉल्ट स्क्रीन प्रदर्शित करेगा