Tartalomjegyzék:
- Kellékek
- 1. lépés: Az alkalmazás anatómiája és navigálása
- 2. lépés: Az adatok (alap) tervezése
- 3. lépés: 1. képernyő (fő)
- 4. lépés: 2. képernyő (egyezések)
- 5. lépés: 3. képernyő (Beállítások)
- 6. lépés: 0. képernyő (Névjegy)
- 7. lépés: Szoftver és/vagy forráskód
Videó: Petanque / Jeu-de-Boules pontszámmegtartó alkalmazás: 7 lépés
2024 Szerző: John Day | [email protected]. Utoljára módosítva: 2024-01-30 09:40
Ez egy Petanque pontszámmegőrző alkalmazás (néha Jeu de Boules néven emlegetik) az Android számára. Ez az alkalmazás a jelenlegi állapotában használható, és teljesen működőképes. Vagy a Petanque Matrix kijelzővel kombinálva is használható [külön utasítások]. A projekt ezen része egyszerű, mivel nincs szükség hardverre, csak ingyenes szoftverekre.
Kellékek
- Android -kompatibilis telefon (lehetőleg)
- Internetböngésző -hozzáféréssel rendelkező eszköz, lehetőleg egérrel ellátott számítógép a kódolási és tervezési munkákhoz
- Fiók az MIT App Inventor szolgáltatással (ingyenes)
- Egy egyszerű rajzcsomag pl. Pixlr vagy Gimp (minden ingyenes)
- Egy ikon erőforrás weboldal pl. Anyag UI ikonok vagy Material.io (minden ingyenes)
Szoftver és forráskód:
Az oldal alján található link az Actual Petanque alkalmazáshoz. Itt megtalálható a teljes forráskódra mutató link is (sajnálom, de az Instructables nem teszi lehetővé.aia fájl feltöltését …).
1. lépés: Az alkalmazás anatómiája és navigálása
Az alkalmazás tervezése és navigálása meglehetősen egyszerű. Összesen 4 képernyő van:
- Fő képernyő #1 (ahol időnk nagy részét a pontszámok megőrzésével töltjük)
- 2. mérkőzések képernyő (ahol megtaláljuk az összes lejátszott mérkőzés és pontszám listáját)
- Beállítások képernyő #3 (az alkalmazás beállításai, adminisztrációs feladatok, hibakeresés stb.)
- A 0. képernyő
A képernyők elrendezése és a gombok elhelyezése 1 kéz és 1 ujj (hüvelykujj) használatára lett optimalizálva. Az alsó navigációs menü gombjai az aktuális képernyőtől jobbra vagy balra lévő képernyőkhöz vezetnek. Tehát a 0 gomb megnyitja a Névjegy képernyőjét. És az #1 gomb visszahozza Önt az 1. főképernyőre stb., Usw.
Egyértelmű? Akkor folytassuk…
2. lépés: Az adatok (alap) tervezése
Most, mielőtt létrehoznánk az első képernyőt, szükségünk van egy helyre, ahol tárolni lehet az alkalmazás által használt összes adatot. Ehhez a legegyszerűbb űrlapot fogjuk használni, amelyet az MIT App Inventor kínál: TinyDB. Ez meglehetősen korlátozott, mivel csak egy kulcs/érték pár tárolására képes, de egy kis segítséggel és néhány trükkel mindent elérhetünk, amit akarunk.
Kétféle értéket tárolunk:
- 10 egyszerű, kulcs/érték értéket tárolunk az egész alkalmazás számára (amint azt a fenti „CreateIgnoreList” függvény mutatja).
- És egy bonyolultabb kulcs/érték, amely az összes befejezett játékadatot egy karakterláncban tárolja, és a „CurrentMatch” kulcs/érték elsődleges kulcsként működik * (amint azt a fenti „SaveScore” funkció mutatja). Ezen az egy kulcs/értékpáron belül ezeket a mezőket egy nem vizuális vezérlőkarakter választja el "\ t". Ez a vezérlő karakter lehetővé teszi számunkra, hogy a 2. mérkőzések képernyőn lekérjük az összes értéket a különálló összetevőkbe, és megjelenítsük és rendezhessük azokat. De erről bővebben a 2. képernyő (mérkőzések) részben.
* További információ a PrimaryKey létrehozásáról a TinyDb számára az AppInventor alkalmazásban a YouTube -on.
3. lépés: 1. képernyő (fő)
Ez a mi „ló” képernyőnk, ahol az idő nagy részét az alkalmazás felhasználójaként töltjük. Ez az MIT App Inventor alkalmazásunk kiindulópontja is.
Amint a fenti (1. kép) képen látható, bár a képernyő beállítása egyszerű, meglehetősen rejtett interaktivitás, hibakezelés, görgetés, osztott képernyő, lebegő menü, ellopott gesztusok, védelem a hibák, a hibás bemenetek és a helyreállítás miatt az összeomlásoktól. Mindezekhez kérjük, tekintse meg az egyes képernyők részletes forráskódját. Szóval mit lehet itt csinálni:
- Nyomja meg a „Csapat 1” gombot, és értesítést kap, amely lehetővé teszi a „Csapat 1” nevének megváltoztatását. A módosítás után ez az „1 -es csapat” az Ön által választott névre változik. Ez az a név is, amelyet a „játék” és a „mérkőzés” pontszámok tükrözésére használnak (a következő képernyőkön).
- Az „1. csapat pontszáma” és a „2. csapat pontszáma” az egyes csapatok alján lenyomott „+” és „-” gombok alapján változik. Ha a pontszám 0, és a „-” gombot megnyomja, egy hang- és vizuális jelzés hallható, de a pontszám 0 marad (természetesen).
- Ha a „pontszám” eléri a 13 -at, akkor néhány dolog történik: vizuális jelzést kap, egy értesítési ablak mutatja az eredményeket (#2. játszma, meccs). Ha azonban nem a klasszikus Petanque pontozást választotta, hanem a 2 pontos különbség pontozását (amely a beállítási képernyőn #3 választható ki), akkor a két csapat közötti különbségtől függően az egyik lesz a győztes (a 3. képen látható módon)).
- Az aktuális „mérkőzés” „pontszáma” a képernyő közepén jelenik meg az „1. csapat” és a „2. csapat” pontszámok között. És ez folyamatosan fog táblázni, amíg egy új „mérkőzés” meg nem kezdődik.
- Ha más képernyőkre szeretne navigálni, akkor „csúsztassa balra” a Névjegy képernyő #megjelenítéséhez, vagy „húzza jobbra” a 2 -es mérkőzések képernyő megjelenítéséhez.
Végül alul található a navigációs menüsor. Ez mindig a képernyő abszolút alján található, függetlenül a képernyő méretétől. Még akkor is, ha az Android „Osztott képernyő” funkcióját használják. Az alsó navigációs menüben 3 gomb található:
- Bal alsó: a "?" gomb balra megy, és ismét megjelenik a kezdeti indítás Névjegy képernyő (#0).
- Alul-középen: a visszaállítás gomb (úgy néz ki, mint egy „@” nyíllal) lehetővé teszi, hogy új játékot vagy új mérkőzést kezdjen a játék „bármikor”, csak nyomja meg az alsó középső „Reset” gombot. Ez egy értesítési ablak is lesz, amely felkéri Önt, hogy kezdjen új játékot vagy új mérkőzést.
- Jobbra lent: A '->' gomb jobbra megy, és az összes meccs képernyő áttekintését mutatja (#2).
4. lépés: 2. képernyő (egyezések)
Bár nagyon egyszerű a vizuális smink, ezen a képernyőn van az érdekesebb kód, mint a többi képernyőn. De mielőtt belekezdenénk, nézzük meg, mit csinál a képernyő:
A „Csapat 1” és „Csapat 2” címkék alatt az összes mérkőzés listája és az összesített pontszámuk látható. Ez egy rendezett lista, amelynek tetején az „utolsó lejátszott mérkőzés”, alul pedig a „legrégebben játszott mérkőzés” szerepel.
Középen, az „1. Az ikon a kiválasztott rendezési iránytól függően változik.
Ha más képernyőkre szeretne navigálni, akkor „csúsztassa balra” az 1. főképernyő megjelenítéséhez, vagy „csúsztassa jobbra” a 3. beállítási képernyő megjelenítéséhez.
Végül alul található a navigációs menüsor. Ez mindig a képernyő abszolút alján található, függetlenül a képernyő méretétől. Még akkor is, ha az Android „Osztott képernyő” funkcióját használják (a 2. képen látható módon). Az alsó navigációs menüben 3 gomb található:
- Bal alsó: a "?" gomb balra megy, és ismét megjelenik a kezdeti indítás Névjegy képernyő (#0).
- Alul-középen: a visszaállítás gomb (úgy néz ki, mint egy „@” nyíllal) lehetővé teszi, hogy új játékot vagy új mérkőzést kezdjen a játék „bármikor”, csak nyomja meg az alsó középső „Reset” gombot. Ez egy értesítési ablak is lesz, amely felkéri Önt, hogy kezdjen új játékot vagy új mérkőzést.
- Jobbra lent: A '->' gomb jobbra megy, és megjeleníti az összes meccs képernyő áttekintését (#2).
A mérkőzések listájának középre állítása a képernyőn:
Meg akartam jeleníteni a mérkőzések listáját a képernyő közepén, a „-” elválasztóval a középpontban. Most, mivel a csapatok által megnyert játékok száma 1 vagy több számjegy lehet, és az egyes csapatok tényleges neve eltérő méretű lehet, ezt nem csak egy listába írhatjuk. Az egész valahogy így nézne ki:
Csapat 1 0 - 1 2. csapat
Foo 1-42 FooBar
Tehát a „-” elválasztó címkét középre kell helyezni. A „Csapat 1 neve” és az „1-es csapat pontszáma” jobbra igazítva a „-” osztó balra. És a „2. csapat pontszáma” és a „2. csapat neve” balra igazítva a „-” osztó jobbra. Tehát így végzünk:
"Team 1 0" "-" "1 Team 2" "Foo 1" "-" "42 FooBar"
És mivel nem tudom, mennyi ideig lesz a mérkőzéseink listája, az összes „Csapat 1 név” és „Csapat 1 pontszám” azonos HTMLFormat címkébe kerül, és minden mérkőzés után beteszek egy betűt, és a következőt egy NewLine -ra teszem.
Készítse elő a dolgokat a válogatáshoz:
Amint azt az Adatok (alap) tervezési lépésben említettük, csak egyetlen értéket tudok tárolni. Így eltároltam az „1-es csapat neve”, „1-es csapat pontszáma”, „2-es csapat pontszáma” és „2-es csapat neve” értékeit nem vizuális vezérlő karakterrel „\ t” elválasztva. Most először ki kell vennem őket az adatbázisból (ahogy a 3. képen látható).
A kódrészlet azt mutatja, hogy először ellenőrizzük, hogy a Hibakereső jelző be van-e állítva (ezt az alkalmazás minden képernyőjén megtesszük. Ezután létrehoz egy listát azokból a kulcsokból/értékpárokból, amelyeket figyelmen kívül kell hagynunk az adatbázisban való áthaladáskor. Kizárólag a „Match” adatok érdekelnek bennünket, semmi más. Ezután körbejárjuk az adatbázist, figyelmen kívül hagyva a Ignorelist összes kulcsát, és létrehozunk egy új listát 2 értékkel:
- Az elsődleges kulcs (ne feledje, hogy ez a szám jelzi a mérkőzés számát, kezdve az 1. mérkőzéssel)
- Egy karakterlánc, amely tartalmazza az „1. csapat neve”, „1. csapat pontszáma”, „2. csapat pontszáma” és „2. csapat neve” értékeit
Ezután végigmegyünk a listán, és létrehozunk egy új listalistát, ahol az egyes mezők egyes elemekre vannak felosztva (a 4. képen látható módon):
DataToSort -> Listaindex 1 -> Listaindex 1 (PK -szám)
-> Listaindex 2 (Csapatnév 1) -> Listaindex 3 (Csapat pontszám 1) -> Listaindex 4 (Csapatpontszám 2) -> Listaindex 5 (Csapatnév 2) -> Listaindex 2 -> Listaindex 1 (PK szám) -> Listaindex 2 (Csapat neve 1) ->… ->…
Ezt követően mutatunk néhány hibakeresési információt, ha a hibakeresési jelző igaz. És most végre rendezhetjük a listánkat.
BubbleSort* a listák listája:
Az 5. kép a BubbleSort* listáinak teljes listáját mutatja. Ez az algoritmus természetesen bármilyen méretű listákhoz használható, függetlenül attól, hogy hány index van jelen.
* További információ arról, hogy a BubbleSort algoritmus mennyire egyszerű a YouTube -on.
5. lépés: 3. képernyő (Beállítások)
Ez a képernyő nagyon elfoglaltnak tűnik, és sok vizuális elemet tartalmaz. De végül csak 5 kapcsoló van:
- „Fred Scoring”: ha „On” állásba kapcsolja, megváltoztatja a pontozási viselkedést, és a győztest a 2 pontos különbség alapján dönti el 13 -nál, és nem csak az első, aki eléri a 13 -at.
- „Bluetooth -párosítás”: (ha engedélyezve van), ha az „On” be van kapcsolva, akkor lehetővé teszi az alkalmazás párosítását a külső Petanque kijelzővel.
- „Gyufák visszaállítása”: Ha „Be” állásban van, az összes mérkőzést alaphelyzetbe állítja/törli, és az 1. mérkőzéssel kezdődik.
- "DB visszaállítása": Ha "On" be van kapcsolva, akkor az összes mérkőzést és minden más alkalmazásbeállítást törli/visszaállítja az eredeti beállításokra, beleértve az aktuális pontszámot, a mérkőzéseket, a csapatneveket, a hibakeresési beállításokat, a rendezési sorrendet, a Bluetooth beállításokat (ha engedélyezve van) stb..
- 'Hibakeresés': Ha 'Be' van kapcsolva, a hibakeresési információkat az egész alkalmazásban szögletes zárójelek között jeleníti meg '”. Olyan dolgok, mint a „Rekordok teljes száma, a változók teljes száma, az aktuális mérkőzés száma, a játék PK száma stb.
Végül alul található a navigációs menüsor. Ez mindig a képernyő abszolút alján található, függetlenül a képernyő méretétől. Még akkor is, ha az Android „Osztott képernyő” funkcióját használják, vagy a képernyő csak magasabb, mint a képernyő, a képernyőn megjelenő elemek száma miatt. Ilyen esetekben mindig görgessen felfelé és lefelé húzva. Ez az alsó navigációs menü mindössze 1 gombbal rendelkezik:
Bal alsó: a '<-' gomb balra megy, és a kezdeti megjelenítés mutatja az összes mérkőzés áttekintését (#2)
6. lépés: 0. képernyő (Névjegy)
Az utolsó képernyő. Csak információ, semmi több.
Ez a képernyő az alkalmazás első indításakor jelenik meg. Ezt követően soha többé nem jelenik meg, hacsak nem a '?' Gombbal választotta ezt. gombot a főképernyőn #1.
Az alsó navigációs menüsor csak 1 gombbal rendelkezik, és ez visszatér a főképernyőhöz #1.
7. lépés: Szoftver és/vagy forráskód
Végül.
Az alkalmazást letöltheti erről a Google Drive -helyről.
Letöltheti a kódot a Pentaque MIT App Inventor Gallery bejegyzéséből (1. kép). Ez lehetővé teszi a projekt mentését saját MIT App Inventor fiókjába (átnevezheti bármire). Innen láthatja az összes kódot a Blokkok szerkesztőben, a Tervező szerkesztő képernyőit, valamint az ehhez a projekthez használt médiát és erőforrásokat.
A forráskódot (.aia fájl, amely valójában egy.zip fájl) is letölthet erről a Google Drive -helyről.
Ajánlott:
A Node.js alkalmazás telepítése a Heroku -n: 3 lépés
Hogyan telepítsünk Node.js alkalmazást Heroku -ra: Itt telepítettem NodeJS -alkalmazásomat Heroku -ra egy ingyenes fiók használatával. Csak kattintson a hivatkozásokra a szükséges szoftverek letöltéséhez: Használt szoftver: VSCode (vagy tetszőleges szövegszerkesztő) HerokuCLIGit
Rajzoló alkalmazás készítésének két módja: 10 lépés
Rajzolóalkalmazás készítésének két módja: Tudom, hogy ez a rajzoló alkalmazás csak 5x5 képpontos képernyővel rendelkezik, így valóban nem tud sokat keresni, de még mindig szórakoztató
[2020] IPhone vagy IPad és Micro: bit Game Pad alkalmazás használata az RC autó vezérléséhez: 23 lépés
[2020] IPhone vagy IPad és Micro: bit Game Pad alkalmazás használata az RC autó vezérléséhez: Gondolt már arra, hogy iPhone -ját vagy iPadjét használja a micro: bit vezérléséhez? Tudja, hogy a Micro: bit Educational Foundation biztosítja az iOS alkalmazást a Alkalmazásbolt? Keresés " mikro: bit " az App Store -ban, és ingyenesen letöltheti az alkalmazást. Az
Alkalmazás által vezérelt színes felhő: 7 lépés (képekkel)
Alkalmazás által vezérelt színes felhő: Szia, ebben az oktatóanyagban megmutatom, hogyan építs meg helyiségvilágítást kavicsos útvonalrácsból. Az egész WLAN -on keresztül vezérelhető egy alkalmazással. Http://youtu.be/NQPSnQKSuo De a végén meg tudod csinálni
LoRa-alapú vizuális mezőgazdasági monitoring rendszer Iot - Előlapi alkalmazás tervezése Firebase és Angular használatával: 10 lépés
LoRa-alapú vizuális mezőgazdasági monitoring rendszer Iot | Előlapi alkalmazás tervezése a Firebase & Angular használatával: Az előző fejezetben arról beszéltünk, hogy az érzékelők hogyan működnek a loRa modullal a firebase Realtime adatbázis feltöltéséhez, és láttuk a nagyon magas szintű diagramot, hogyan működik az egész projektünk. Ebben a fejezetben arról fogunk beszélni, hogyan lehet