विषयसूची:

पेटैंक / जेयू-डी-बौल्स स्कोर कीपिंग एप्लीकेशन: 7 कदम
पेटैंक / जेयू-डी-बौल्स स्कोर कीपिंग एप्लीकेशन: 7 कदम

वीडियो: पेटैंक / जेयू-डी-बौल्स स्कोर कीपिंग एप्लीकेशन: 7 कदम

वीडियो: पेटैंक / जेयू-डी-बौल्स स्कोर कीपिंग एप्लीकेशन: 7 कदम
वीडियो: Crime Patrol Satark Season 2 - क्राइम पट्रोल सतर्क 2 - Ep 508 - Full Episode - 23rd Sep, 2021 2024, नवंबर
Anonim
पेटैंक / जेयू-डी-बौल्स स्कोर कीपिंग एप्लीकेशन
पेटैंक / जेयू-डी-बौल्स स्कोर कीपिंग एप्लीकेशन
पेटैंक / जेयू-डी-बौल्स स्कोर कीपिंग एप्लीकेशन
पेटैंक / जेयू-डी-बौल्स स्कोर कीपिंग एप्लीकेशन
पेटैंक / जेयू-डी-बौल्स स्कोर कीपिंग एप्लीकेशन
पेटैंक / जेयू-डी-बौल्स स्कोर कीपिंग एप्लीकेशन

यह Android के लिए एक पेटैंक स्कोर कीपिंग एप्लिकेशन (जिसे कभी-कभी Jeu de Boules कहा जाता है) है। इस एप्लिकेशन का उपयोग जैसा है वैसा ही किया जा सकता है और यह पूरी तरह कार्यात्मक है। या इसका उपयोग पेटैंक मैट्रिक्स डिस्प्ले [अलग इंस्ट्रक्शंस] के संयोजन में किया जा सकता है। परियोजना का यह हिस्सा आसान है क्योंकि किसी हार्डवेयर की आवश्यकता नहीं है, केवल मुफ्त उपलब्ध सॉफ्टवेयर है।

आपूर्ति

  1. एक Android संगत फोन (अधिमानतः)
  2. इंटरनेट ब्राउज़र एक्सेस के साथ एक उपकरण, कोडिंग और डिज़ाइन कार्य के लिए माउस के साथ कंप्यूटर को प्राथमिकता दी जाती है
  3. एमआईटी ऐप आविष्कारक के साथ एक खाता (निःशुल्क)
  4. एक साधारण ड्राइंग पैकेज उदा। Pixlr या Gimp (सभी निःशुल्क)
  5. एक आइकन संसाधन वेबसाइट उदा। सामग्री UI चिह्न या Material.io (सभी निःशुल्क)

सॉफ्टवेयर और सोर्स कोड:

आप इस पृष्ठ के निचले भाग में वास्तविक पेटैंक एप्लिकेशन का लिंक पा सकते हैं। यहां आप पूर्ण स्रोत कोड का लिंक भी पा सकते हैं (इसके लिए क्षमा करें, लेकिन अनुदेशक मुझे.aia फ़ाइल अपलोड करने की अनुमति नहीं देते हैं…)।

चरण 1: ऐप का एनाटॉमी और नेविगेशन

ऐप का एनाटॉमी और नेविगेशन
ऐप का एनाटॉमी और नेविगेशन

ऐप का डिज़ाइन और नेविगेशन बहुत आसान है। कुल 4 स्क्रीन हैं:

  1. मुख्य स्क्रीन # 1 (जहां हम अपना अधिकांश समय स्कोर रखने में बिताते हैं)
  2. मैच स्क्रीन #2 (जहां हम सभी खेले गए मैचों और स्कोर की सूची पाते हैं)
  3. सेटिंग्स स्क्रीन #3 (ऐप के लिए सेटिंग्स, प्रशासनिक कार्य, डिबग आदि)
  4. स्क्रीन #0 के बारे में (इसके बारे में, लोगो और निर्माण निर्देश कहां से प्राप्त करें यानी यह वेबपेज)

स्क्रीन के लेआउट और बटनों की स्थिति को 1 हाथ और 1 उंगली (अंगूठे) के उपयोग के लिए अनुकूलित किया गया है। निचले नेविगेशन मेनू के बटन आपको वर्तमान स्क्रीन के दाएं या बाएं स्क्रीन पर ले जाते हैं। तो बटन 0 आपको अबाउट स्क्रीन #0 पर लाता है। और बटन # 1 आपको मुख्य स्क्रीन # 1 आदि पर वापस लाता है, usw।

स्पष्ट? तो चलिए जारी रखते हैं…

चरण 2: डेटा (आधार) डिज़ाइन

डेटा (आधार) डिजाइन
डेटा (आधार) डिजाइन
डेटा (आधार) डिजाइन
डेटा (आधार) डिजाइन

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

2 प्रकार के मान हैं जिन्हें हम संग्रहीत करेंगे:

  • हम 10 सरल कुंजी/मूल्य ऐप-व्यापी मान संग्रहीत करेंगे (जैसा कि ऊपर 'CreateIgnoreList' फ़ंक्शन में दिखाया गया है)।
  • और एक अधिक जटिल कुंजी/मान सभी पूर्ण गेम डेटा को एक स्ट्रिंग में संग्रहीत करता है जिसमें 'करंटमैच' कुंजी/मान प्राथमिक कुंजी * के रूप में कार्य करता है (जैसा कि ऊपर 'सेवस्कोर' फ़ंक्शन में दिखाया गया है)। इस एक कुंजी/मान युग्म के भीतर इन क्षेत्रों को एक गैर-दृश्य नियंत्रण वर्ण '\t' द्वारा अलग किया जाता है। यह कंट्रोल कैरेक्टर हमें मैच स्क्रीन # 2 में सभी मानों को इसके अलग-अलग घटकों में पुनः प्राप्त करने और उन्हें प्रदर्शित और सॉर्ट करने में सक्षम करेगा। लेकिन इसके बारे में अनुभाग स्क्रीन 2 (मैचों) में।

* YouTube पर AppInventor में TinyDb के लिए एक प्राथमिक कुंजी बनाने के तरीके के बारे में अधिक जानकारी।

चरण 3: स्क्रीन 1 (मुख्य)

स्क्रीन 1 (मुख्य)
स्क्रीन 1 (मुख्य)
स्क्रीन 1 (मुख्य)
स्क्रीन 1 (मुख्य)
स्क्रीन 1 (मुख्य)
स्क्रीन 1 (मुख्य)

यह हमारी 'वर्कहॉर्स' स्क्रीन है जहां हम ज्यादातर समय ऐप के उपयोगकर्ता के रूप में बिताएंगे। यह हमारे एमआईटी ऐप आविष्कारक ऐप के लिए शुरुआती बिंदु भी है।

जैसा कि आप ऊपर (चित्र # 1) से देख सकते हैं, हालांकि सेटअप में स्क्रीन सरल है, इसमें कुछ छिपी हुई अन्तरक्रियाशीलता, त्रुटि प्रबंधन, स्क्रॉलिंग, स्प्लिट-स्क्रीन, फ्लोटिंग मेनू, स्वाइपिंग जेस्चर, गलतियों से बचाव, गलत इनपुट और यहां तक कि पुनर्प्राप्ति भी है। दुर्घटनाओं से। इन सभी सुविधाओं के लिए कृपया प्रत्येक स्क्रीन के लिए विस्तृत स्रोत कोड देखें। तो आप यहाँ क्या कर सकते हैं:

  • 'टीम 1' दबाएं और आपको एक अधिसूचना मिलेगी जो आपको 'टीम 1' का नाम बदलने में सक्षम करेगी। एक बार बदलने के बाद यह इस 'टीम 1' को आपके द्वारा चुने गए नाम में बदल देगा। यह वह नाम भी है जिसका उपयोग आपके 'गेम' और 'मैच' स्कोर (अगली स्क्रीन में) को दर्शाने के लिए किया जाएगा।
  • प्रत्येक संबंधित टीम के नीचे दबाए गए '+' और '-' बटन के आधार पर 'टीम 1 का स्कोर' और 'टीम 2 का स्कोर' बदल जाता है। यदि स्कोर 0 है और '-' दबाया जाता है तो एक श्रव्य और दृश्य संकेत प्रदान किया जाता है लेकिन स्कोर 0 रहता है (बेशक)।
  • यदि एक 'स्कोर' 13 तक पहुंचता है तो कुछ चीजें होती हैं: एक दृश्य संकेत प्रदान किया जाता है, एक अधिसूचना विंडो परिणाम दिखाती है (चित्र # 2) और आपको एक नया गेम या एक नया मैच शुरू करने का विकल्प प्रदान करता है (और निश्चित रूप से एक नया खेल)। यदि फिर भी आपने क्लासिक पेटैंक स्कोरिंग नहीं चुना है, लेकिन 2-बिंदु अंतर स्कोरिंग (जिसे सेटिंग स्क्रीन #3 में चुना जा सकता है) को दो टीमों के बीच के अंतर के आधार पर विजेता घोषित किया जाएगा (जैसा कि चित्र #3 में दिखाया गया है)).
  • वर्तमान 'मैच' में 'स्कोर' को 'टीम 1' और 'टीम 2' स्कोर के बीच स्क्रीन के केंद्र में दिखाया गया है। और यह तब तक सारणीबद्ध होता रहेगा जब तक एक नया 'मैच' शुरू नहीं हो जाता।
  • अन्य स्क्रीन पर नेविगेट करने के लिए आप स्क्रीन के बारे में #0 दिखाने के लिए 'बाएं स्वाइप करें' या मैच स्क्रीन #2 दिखाने के लिए 'राइट स्वाइप' भी कर सकते हैं।

अंत में सबसे नीचे नेविगेशन मेन्यूबार है। यह हमेशा स्क्रीन के बिल्कुल नीचे स्थित होता है, चाहे स्क्रीन का आकार कुछ भी हो। भले ही एंड्रॉइड 'स्प्लिट स्क्रीन' कार्यक्षमता का उपयोग किया जाता है। नीचे के नेविगेशन मेनू में 3 बटन हैं:

  1. नीचे-बाएं: '?' बटन बाईं ओर जाएगा और प्रारंभिक स्टार्ट-अप स्क्रीन के बारे में (#0) फिर से दिखाएगा।
  2. निचला-केंद्र: रीसेट बटन (जो एक तीर के साथ '@' जैसा दिखता है) आपको गेम में 'किसी भी समय' पर एक नया गेम या एक नया मैच शुरू करने में सक्षम करेगा, बस नीचे मध्य 'रीसेट' बटन दबाएं। यह एक अधिसूचना विंडो भी करेगा जो आपको एक नया गेम या एक नया मैच शुरू करने के लिए कहेगा।
  3. नीचे-दाएं: '->' बटन दाईं ओर जाएगा और सभी मिलान स्क्रीन (#2) का अवलोकन दिखाएगा।

चरण 4: स्क्रीन 2 (मैचों)

स्क्रीन 2 (मैचों)
स्क्रीन 2 (मैचों)
स्क्रीन 2 (मैचों)
स्क्रीन 2 (मैचों)
स्क्रीन 2 (मैचों)
स्क्रीन 2 (मैचों)

हालांकि दृश्य श्रृंगार में बहुत सरल है, इस स्क्रीन में अन्य स्क्रीन की तुलना में इसके अंदर अधिक दिलचस्प कोड है। लेकिन इससे पहले कि हम इसमें जाएं, देखें कि वह स्क्रीन क्या करता है:

'टीम 1' और 'टीम 2' लेबल के नीचे सभी मैचों और उनके संबंधित कुल स्कोर की एक सूची है। यह शीर्ष पर 'आखिरी खेला गया मैच' और सबसे नीचे 'सबसे पुराना खेला गया मैच' के साथ एक क्रमबद्ध सूची है।

बीच में, 'टीम 1' और 'टीम 2' के बीच, एक बटन है जिसका उपयोग मैचों की सूची को आरोही या अवरोही क्रम में क्रमबद्ध करने के लिए किया जा सकता है। चुनी गई छँटाई की दिशा के आधार पर आइकन बदल जाएगा।

अन्य स्क्रीन पर नेविगेट करने के लिए आप मुख्य स्क्रीन #1 दिखाने के लिए 'बाएं स्वाइप' या सेटिंग स्क्रीन #3 दिखाने के लिए 'दाएं स्वाइप करें' भी कर सकते हैं।

अंत में सबसे नीचे नेविगेशन मेन्यूबार है। यह हमेशा स्क्रीन के बिल्कुल नीचे स्थित होता है, चाहे स्क्रीन का आकार कुछ भी हो। भले ही एंड्रॉइड 'स्प्लिट स्क्रीन' कार्यक्षमता का उपयोग किया जाता है (जैसा कि चित्र # 2 में दिखाया गया है)। नीचे के नेविगेशन मेनू में 3 बटन हैं:

  1. नीचे-बाएं: '?' बटन बाईं ओर जाएगा और प्रारंभिक स्टार्ट-अप स्क्रीन के बारे में (#0) फिर से दिखाएगा।
  2. निचला-केंद्र: रीसेट बटन (जो एक तीर के साथ '@' जैसा दिखता है) आपको गेम में 'किसी भी समय' पर एक नया गेम या एक नया मैच शुरू करने में सक्षम करेगा, बस नीचे मध्य 'रीसेट' बटन दबाएं। यह एक अधिसूचना विंडो भी करेगा जो आपको एक नया गेम या एक नया मैच शुरू करने के लिए कहेगा।
  3. नीचे-दाएं: '->' बटन दाईं ओर जाएगा और सभी मिलान स्क्रीन (#2) का अवलोकन दिखाएगा।

स्क्रीन पर मैचों की सूची को केंद्रित करना:

मैं केंद्र के रूप में '-' विभक्त के साथ स्क्रीन पर केंद्रित मैचों की सूची दिखाना चाहता था। अब, क्योंकि एक टीम द्वारा जीते गए खेलों की संख्या 1 या अधिक अंक हो सकती है और प्रत्येक टीम का वास्तविक नाम आकार में भिन्न हो सकता है, हम इसे केवल 1 सूची में नहीं डाल सकते। यह सब कुछ इस तरह दिखेगा:

टीम 1 0 - 1 टीम 2

फू 1 - 42

इसलिए '-' डिवाइडर के लिए लेबल को बीच में रखने की जरूरत है। 'टीम 1 नाम' और 'टीम 1 स्कोर' के साथ '-' डिवाइडर के बाईं ओर संरेखित करें। और 'टीम 2 स्कोर' और 'टीम 2 का नाम' बाईं ओर '-' डिवाइडर के दाईं ओर संरेखित है। तो हम इस तरह समाप्त होते हैं:

"टीम 1 0" "-" "1 टीम 2" "फू 1" "-" "42 फूबार"

और चूंकि मुझे नहीं पता कि हमारे मैचों की सूची कितनी लंबी होगी, मैंने सभी 'टीम 1 नाम' और 'टीम 1 स्कोर' को एक ही HTMLFormat लेबल में डाल दिया है और प्रत्येक मैच के बाद मैं एक सम्मिलित करता हूं और अगले को एक नई लाइन पर रखता हूं।.

छँटाई के लिए चीजें तैयार करें:

जैसा कि डेटा (आधार) डिज़ाइन चरण में उल्लेख किया गया है, मैं केवल एक मान संग्रहीत कर सकता हूं। इसलिए मैंने 'टीम 1 नाम', 'टीम 1 स्कोर', 'टीम 2 स्कोर' और 'टीम 2 नाम' के मानों को एक गैर-दृश्य नियंत्रण वर्ण '\t' से अलग करके संग्रहीत किया। अब मुझे पहले उन्हें डेटाबेस से बाहर निकालना होगा (जैसा कि चित्र #3 में दिखाया गया है)।

कोड स्निपेट दिखाता है कि हम पहले जांचते हैं कि क्या डीबग-फ्लैग सेट है (यह इस एप्लिकेशन की प्रत्येक स्क्रीन में किया जाता है। इसके बाद यह कुंजी (एस/वैल्यू जोड़े) की एक सूची बनाता है जिसे हमें डेटाबेस के माध्यम से अनदेखा करने की आवश्यकता होती है। हम केवल 'मिलान' डेटा में रुचि रखते हैं, और कुछ नहीं। हम डेटाबेस के माध्यम से लूप करते हैं, इग्नोरलिस्ट पर सभी कुंजियों को अनदेखा करते हैं और 2 मानों के साथ एक नई सूची बनाते हैं:

  1. प्राइमरीकी (याद रखें कि यह एक संख्या है जो मैच नंबर को इंगित करती है, मैच # 1 से शुरू होती है)
  2. एक स्ट्रिंग जिसमें 'टीम 1 नाम', 'टीम 1 स्कोर', 'टीम 2 स्कोर' और 'टीम 2 नाम' के मान शामिल हैं

फिर हम सूची को गर्त में ले जाते हैं और सूचियों की एक नई सूची बनाते हैं जहां अलग-अलग क्षेत्रों को अलग-अलग मदों में विभाजित किया जाता है (जैसा कि चित्र #4 में दिखाया गया है):

DataToSort -> सूची अनुक्रमणिका 1 -> सूची अनुक्रमणिका 1 (PK संख्या)

-> सूची सूचकांक 2 (टीम का नाम 1) -> सूची सूचकांक 3 (टीम स्कोर 1) -> सूची सूचकांक 4 (टीम स्कोर 2) -> सूची सूचकांक 5 (टीम का नाम 2) -> सूची सूचकांक 2 -> सूची सूचकांक 1 (पीके नंबर) -> सूची सूचकांक 2 (टीम का नाम 1) -> … -> …

उसके बाद हम कुछ डिबग जानकारी दिखाते हैं यदि डिबग फ़्लैग सही है। और अब हम अंत में अपनी सूची (सूचियों की) को सॉर्ट कर सकते हैं।

बबलसॉर्ट* सूचियों की सूची:

चित्र #5 हमारी सूचियों की सूची बबलसॉर्ट* को पूरी सूची दिखाता है। यह एल्गोरिथ्म निश्चित रूप से किसी भी आकार की सूचियों की सूची के लिए उपयोग किया जा सकता है, चाहे कितने भी सूचकांक मौजूद हों।

* YouTube पर बबलसॉर्ट एल्गोरिथम कितना सरल है, इस बारे में अधिक जानकारी।

चरण 5: स्क्रीन 3 (सेटिंग्स)

स्क्रीन 3 (सेटिंग्स)
स्क्रीन 3 (सेटिंग्स)

यह स्क्रीन बहुत व्यस्त दिखती है और इसमें बहुत सारे विज़ुअल डिज़ाइन तत्व हैं। लेकिन अंत में सिर्फ 5 टॉगल स्विच होते हैं:

  1. 'फ्रेड स्कोरिंग': यदि 'ऑन' स्विच किया जाता है तो यह स्कोरिंग व्यवहार को बदल देता है और 13 पर 2 अंक के अंतर के आधार पर विजेता का फैसला करता है, न कि केवल 13 तक पहुंचने वाले पहले व्यक्ति के आधार पर।
  2. 'ब्लूटूथ पेयरिंग': (सक्षम होने पर) यदि 'ऑन' स्विच किया जाता है तो बाहरी पेटैन्क डिस्प्ले के साथ इस एप्लिकेशन के साथ पेयरिंग को सक्षम बनाता है।
  3. 'रीसेट मैच': अगर 'ऑन' स्विच किया जाता है तो यह सभी मैचों को रीसेट/डिलीट कर देगा और मैच 1 से शुरू होगा।
  4. 'रीसेट डीबी': यदि 'ऑन' स्विच किया जाता है तो यह सभी मैचों और अन्य सभी एप्लिकेशन सेटिंग्स को वर्तमान स्कोर, मैचों, टीम के नाम, डीबग सेटिंग्स, सॉर्टिंग ऑर्डर, ल्यूटूथ सेटिंग्स (सक्षम होने पर) इत्यादि सहित मूल सेटिंग्स पर वापस हटा देगा/रीसेट करेगा।.
  5. 'डीबग': अगर 'ऑन' स्विच किया जाता है तो यह पूरे ऐप में स्क्वायर ब्रैकेट '' के बीच डीबग जानकारी दिखाएगा। 'रिकॉर्ड की कुल संख्या, चर की कुल संख्या, वर्तमान मिलान संख्या, गेम पीके नंबर इत्यादि जैसी चीजें।

अंत में सबसे नीचे नेविगेशन मेन्यूबार है। यह हमेशा स्क्रीन के बिल्कुल नीचे स्थित होता है, चाहे स्क्रीन का आकार कुछ भी हो। भले ही एंड्रॉइड 'स्प्लिट स्क्रीन' कार्यक्षमता का उपयोग किया गया हो या स्क्रीन पर आइटम की संख्या के कारण स्क्रीन स्क्रीन की तुलना में केवल लंबी हो। ऐसी स्थिति में आप हमेशा ऊपर और नीचे स्वाइप करके स्क्रॉल कर सकते हैं। इस निचले नेविगेशन मेनू में सिर्फ 1 बटन है:

नीचे-बाएं: '<-' बटन बाईं ओर जाएगा और प्रारंभिक शो सभी मिलान स्क्रीन (# 2) का अवलोकन दिखाएगा।

चरण 6: स्क्रीन 0 (के बारे में)

स्क्रीन 0 (लगभग)
स्क्रीन 0 (लगभग)

अंतिम स्क्रीन। सिर्फ जानकारी, और कुछ नहीं।

यह स्क्रीन पहली बार दिखाई जाती है जब यह एप्लिकेशन शुरू किया जाता है। उसके बाद इसे फिर कभी नहीं दिखाया जाएगा, जब तक कि आपने '?' दबाकर ऐसा करने का विकल्प नहीं चुना। मुख्य स्क्रीन # 1 पर बटन।

निचले नेविगेशन मेनूबार में केवल 1 बटन होता है और यह आपको मुख्य स्क्रीन #1 पर वापस लाता है।

चरण 7: सॉफ्टवेयर और/या स्रोत कोड

सॉफ्टवेयर और/या सोर्स कोड
सॉफ्टवेयर और/या सोर्स कोड

आखिरकार।

आप इस Google ड्राइव स्थान से एप्लिकेशन डाउनलोड कर सकते हैं।

आप पेंटाक के लिए एमआईटी ऐप आविष्कारक गैलरी प्रविष्टि से कोड डाउनलोड कर सकते हैं (चित्र # 1)। यह आपको परियोजना को अपने स्वयं के एमआईटी ऐप आविष्कारक खाते में सहेजने में सक्षम करेगा (आप इसका नाम बदलकर जो चाहें कर सकते हैं)। वहां से आप ब्लॉक संपादक में सभी कोड, डिज़ाइनर संपादक में स्क्रीन और इस परियोजना के लिए उपयोग किए जाने वाले सभी मीडिया और संसाधनों को देख सकते हैं।

आप इस Google डिस्क स्थान से स्रोत कोड (एक.aia फ़ाइल, जो वास्तव में एक.zip फ़ाइल है) डाउनलोड कर सकते हैं।

सिफारिश की: