Sadržaj:

Primjena vođenja bodova Petanque / Jeu-de-Boules: 7 koraka
Primjena vođenja bodova Petanque / Jeu-de-Boules: 7 koraka

Video: Primjena vođenja bodova Petanque / Jeu-de-Boules: 7 koraka

Video: Primjena vođenja bodova Petanque / Jeu-de-Boules: 7 koraka
Video: Seksi QA: Prebrzo svršavanje, povećanje penisa, erekcija pri ljubljenju i vole li žene cyber seks 2024, Srpanj
Anonim
Zahtjev za vođenje bodova Petanque / Jeu-de-Boules
Zahtjev za vođenje bodova Petanque / Jeu-de-Boules
Zahtjev za vođenje bodova Petanque / Jeu-de-Boules
Zahtjev za vođenje bodova Petanque / Jeu-de-Boules
Zahtjev za vođenje bodova Petanque / Jeu-de-Boules
Zahtjev za vođenje bodova Petanque / Jeu-de-Boules

Ovo je aplikacija za čuvanje bodova u Petanqueu (ponekad se naziva i Jeu de Boules) za Android. Ova se aplikacija može koristiti onakva kakva jest i potpuno je funkcionalna. Ili se može koristiti u kombinaciji s prikazom Petanque Matrix [zasebne upute]. Ovaj dio projekta je jednostavan jer nije potreban hardver, samo besplatni softver.

Pribor

  1. Telefon kompatibilan s Androidom (po mogućnosti)
  2. Uređaj s pristupom internetskom pregledniku, po mogućnosti računalo s mišem za kodiranje i dizajn
  3. Račun kod MIT App Inventor (besplatno)
  4. Jednostavan paket za crtanje, npr. Pixlr ili Gimp (sve besplatno)
  5. Web stranica s resursima ikona, npr. Ikone korisničkog sučelja materijala ili Material.io (sve besplatno)

Softver i izvorni kod:

Na dnu ove stranice možete pronaći vezu do aplikacije Actual Petanque. Ovdje možete pronaći i vezu do cijelog izvornog koda (žao mi je zbog ovoga, ali Instructables mi ne dopušta postavljanje.aia datoteke …).

Korak 1: Anatomija i navigacija aplikacije

Anatomija i navigacija aplikacije
Anatomija i navigacija aplikacije

Dizajn i navigacija aplikacije prilično su jednostavni. Ukupno postoje 4 ekrana:

  1. Glavni zaslon #1 (na kojem provodimo većinu vremena zadržavajući rezultat)
  2. Zaslon utakmica 2 (gdje nalazimo popis svih odigranih utakmica i rezultata)
  3. Zaslon postavki #3 (postavke za aplikaciju, administrativni zadaci, ispravljanje pogrešaka itd.)
  4. O ekranu #0 (about, logo i gdje možete dobiti upute za izradu, tj. OVU web stranicu)

Raspored zaslona i položaj gumba optimizirani su za upotrebu jednom rukom i jednim prstom (palcem). Gumbi na donjem navigacijskom izborniku vode vas na zaslone desno ili lijevo od trenutnog zaslona. Dakle, gumb 0 dovodi vas na zaslon O aplikaciji #0. A gumb #1 vraća vas na glavni zaslon #1 itd., Usw.

Čisto? Onda nastavimo…

Korak 2: Dizajn podataka (baze)

Dizajn baze podataka
Dizajn baze podataka
Dizajn baze podataka
Dizajn baze podataka

Prije nego što stvorimo prvi zaslon, potrebno nam je mjesto za pohranu svih podataka koje će ova aplikacija koristiti. Za to ćemo koristiti najjednostavniji obrazac koji nudi MIT App Inventor: TinyDB. Ovo je prilično ograničeno jer može pohraniti samo par ključ/vrijednost, ali uz malu pomoć i neke trikove to možemo učiniti da učini sve što želimo.

Postoje 2 vrste vrijednosti koje ćemo pohraniti:

  • Pohranit ćemo 10 jednostavnih vrijednosti ključ/vrijednost za cijelu aplikaciju (kao što je prikazano u gornjoj funkciji 'CreateIgnoreList').
  • I složeniji ključ/vrijednost koji pohranjuje sve dovršene podatke o igrama u jedan niz s ključem/vrijednošću 'CurrentMatch' koji djeluje kao primarni ključ * (kao što je prikazano u gornjoj funkciji 'SaveScore'). Ova polja unutar ovog para ključ/vrijednost odvojena su nevizuelnim kontrolnim znakom '\ t'. Ovaj kontrolni znak omogućit će nam na zaslonu Matches #2 da dohvatimo sve vrijednosti u svoje zasebne komponente te ih prikažemo i sortiramo. No više o tome u odjeljku Zaslon 2 (podudara se).

* Više informacija o tome kako izraditi primarni ključ za TinyDb u AppInventoru na YouTubeu.

Korak 3: Zaslon 1 (glavni)

Zaslon 1 (glavni)
Zaslon 1 (glavni)
Zaslon 1 (glavni)
Zaslon 1 (glavni)
Zaslon 1 (glavni)
Zaslon 1 (glavni)

Ovo je naš zaslon 'radnog konja' na kojem ćemo većinu vremena provoditi kao korisnici aplikacije. To je također polazište za našu aplikaciju MIT App Inventor.

Kao što možete vidjeti na (slika #1) gore, iako je zaslon jednostavan za postavljanje, postoji prilično skrivena interaktivnost, rukovanje pogreškama, pomicanje, podijeljeni zaslon, plutajući izbornik, geste prevlačenjem, zaštita od pogrešaka, pogrešni unosi, pa čak i oporavak od sudara. Za sve ove značajke pogledajte detaljni izvorni kod za svaki zaslon. Dakle, što možete učiniti ovdje:

  • Pritisnite 'Tim 1' i dobit ćete Obavijest koja će vam omogućiti promjenu imena 'Tim 1'. Nakon što se ovo promijeni, promijenit će se "Tim 1" u naziv koji ste odabrali. Ovo je također naziv koji će se koristiti za odražavanje vašeg rezultata igre i igre (na sljedećim zaslonima).
  • "Ocjena tima 1" i "ocjena tima 2" mijenjaju se na temelju gumba "+" i "-" pritisnutih na dnu svake odgovarajuće ekipe. Ako je rezultat 0 i pritisne se '-', čuje se zvučni i vizualni signal, ali rezultat ostaje 0 (naravno).
  • Ako 'rezultat' dosegne 13, dogodit će se nekoliko stvari: dobiva se vizualni signal, prozori s obavijestima prikazuju rezultate (slika #2) i pruža vam mogućnost da započnete novu igru ili novu utakmicu (i naravno novu igra). Ako, međutim, niste odabrali klasično bodovanje u Petanqueu, već bodovanje razlike od 2 boda (koje se može odabrati na zaslonu postavki #3), ovisno o razlici između dva tima, jedan će se proglasiti pobjednikom (kao što je prikazano na slici #3).
  • "Rezultat" u trenutnoj "utakmici" prikazan je u sredini ekrana između rezultata "Tim 1" i "Tim 2". I to će se nastaviti tabelirati sve dok ne započne novo 'podudaranje'.
  • Za prelazak na druge zaslone također možete 'prijeći prstom ulijevo' za prikaz ekrana O programu #0 ili 'prijeđite prstom udesno' za prikaz zaslona Podudaranja #2.

Konačno na dnu je navigacijska izbornička traka. Ovo se uvijek nalazi na apsolutnom dnu zaslona, bez obzira na veličinu zaslona. Čak i ako se koristi funkcija Androida za podijeljeni zaslon. Donji navigacijski izbornik ima 3 gumba:

  1. Dolje lijevo: '?' gumb će otići ulijevo i ponovno prikazati početni zaslon O programu (#0).
  2. Donji centar: gumb za poništavanje (koji izgleda kao "@" sa strelicom) omogućit će vam da započnete novu igru ili novu utakmicu u bilo kojem trenutku u igri, samo pritisnite donju srednju tipku "Poništi". Ovo će također prikazati prozor s obavijestima koji će od vas tražiti da započnete novu igru ili novu utakmicu.
  3. Dolje desno: Gumb '->' ide desno i prikazat će pregled svih zaslona Utakmica (#2).

Korak 4: Zaslon 2 (podudaranja)

Zaslon 2 (podudaranja)
Zaslon 2 (podudaranja)
Zaslon 2 (podudaranja)
Zaslon 2 (podudaranja)
Zaslon 2 (podudaranja)
Zaslon 2 (podudaranja)

Iako je vrlo jednostavan u vizualnom sastavu, ovaj zaslon u sebi ima zanimljiviji kod od ostalih zaslona. No prije nego što prijeđemo na to, vidimo što on radi na ekranu:

Ispod oznaka "Tim 1" i "Tim 2" nalazi se popis svih utakmica i njihovih ukupnih bodova. Ovo je razvrstani popis s "posljednjom odigranom utakmicom" na vrhu i "najstarijom odigranom utakmicom" pri dnu.

U sredini, između 'tima 1' i 'tima 2' nalazi se gumb koji se može koristiti za sortiranje popisa utakmica po uzlaznom ili silaznom redoslijedu. Ikona će se promijeniti ovisno o odabranom smjeru sortiranja.

Za prelazak na druge zaslone također možete 'prijeći prstom ulijevo' za prikaz glavnog zaslona #1 ili 'prijeđite prstom udesno' za prikaz zaslona postavki #3.

Konačno na dnu je navigacijska izbornička traka. Ovo se uvijek nalazi na apsolutnom dnu zaslona, bez obzira na veličinu zaslona. Čak i ako se koristi funkcija Androida za podijeljeni zaslon (kao što je prikazano na slici #2). Donji navigacijski izbornik ima 3 gumba:

  1. Dolje lijevo: '?' gumb će otići ulijevo i ponovno prikazati početni zaslon O programu (#0).
  2. Donji centar: gumb za poništavanje (koji izgleda kao "@" sa strelicom) omogućit će vam da započnete novu igru ili novu utakmicu u bilo kojem trenutku u igri, samo pritisnite donju srednju tipku "Poništi". Ovo će također prikazati prozor s obavijestima koji će od vas tražiti da započnete novu igru ili novu utakmicu.
  3. Dolje desno: Gumb '->' ide desno i prikazat će pregled svih zaslona Utakmica (#2).

Centriranje popisa utakmica na ekranu:

Htio sam prikazati popis podudarnosti centriranih na ekranu s razdjelnikom '-' u sredini. Budući da broj utakmica koje je ekipa dobila može biti 1 ili više znamenki, a stvarni naziv svake momčadi može biti različite veličine, ne možemo ovo samo staviti na 1 popis. Sve bi to izgledalo otprilike ovako:

Momčad 1 0 - 1 Momčad 2

Foo 1 - 42 FooBar

Dakle, oznaku za razdjelnik '-' potrebno je centrirati. Uz "naziv tima 1" i "rezultat tima 1" desno poravnato lijevo od razdjelnika "-". A "rezultat tima 2" i "naziv tima 2" lijevo poravnato desno od razdjelnika "-". Pa završavamo ovako:

"Team 1 0" "-" "1 Team 2" "Foo 1" "-" "42 FooBar"

A budući da ne znam koliko će trajati naš popis utakmica, stavio sam sve 'naziv tima 1' i 'rezultat 1 tima' u istu oznaku HTMLFormat, a nakon svakog meča umetnuo sam a sljedeći stavio na novu liniju.

Pripremite stvari za sortiranje:

Kao što je spomenuto u koraku oblikovanja podataka (baze), mogu pohraniti samo jednu vrijednost. Tako sam pohranio vrijednosti 'Ime tima 1', 'Rezultat tima 1', 'Rezultat tima 2' i 'Naziv tima 2' odvojene nevizuelnim kontrolnim znakom '\ t'. Sada ih moram prvo izvaditi iz baze podataka (kao što je prikazano na slici #3).

Isječak koda pokazuje da prvo provjeravamo je li postavljena zastavica za otklanjanje pogrešaka (to se radi na svakom zaslonu ove aplikacije. Zatim stvara popis ključeva (parova/vrijednosti) koje moramo zanemariti prilikom prolaska kroz bazu podataka. Zanimaju nas samo podaci "Podudaranje", ništa drugo. Zatim prolazimo kroz bazu podataka, zanemarujući sve ključeve na popisu zanemarivanja i stvaramo novi popis s 2 vrijednosti:

  1. PrimaryKey (zapamtite da je ovo broj koji označava broj podudaranja, počevši od podudaranja #1)
  2. Niz koji sadrži vrijednosti za "naziv tima 1", "rezultat tima 1", "rezultat tima 2" i "naziv tima 2"

Zatim idemo kroz popis i stvaramo novi popis popisa gdje su pojedina polja podijeljena na pojedinačne stavke (kao što je prikazano na slici #4):

DataToSort -> Indeks popisa 1 -> Indeks popisa 1 (PK broj)

-> Indeks popisa 2 (naziv tima 1) -> indeks popisa 3 (rezultat tima 1) -> indeks popisa 4 (rezultat tima 2) -> indeks popisa 5 (naziv tima 2) -> indeks popisa 2 -> indeks popisa 1 (PK broj) -> Indeks popisa 2 (Naziv tima 1) ->… ->…

Nakon toga prikazujemo neke informacije o otklanjanju pogrešaka ako je zastavica Otklanjanje pogrešaka True. I sada konačno možemo razvrstati naš popis (popisa).

BubbleSort* popis popisa:

Slika #5 prikazuje potpuni popis BubbleSort* naš popis popisa. Ovaj algoritam se naravno može koristiti za bilo koju veličinu popisa bez obzira na broj indeksa.

* Više informacija o tome koliko je jednostavan algoritam BubbleSort na YouTubeu.

Korak 5: Zaslon 3 (postavke)

Zaslon 3 (Postavke)
Zaslon 3 (Postavke)

Ovaj zaslon izgleda vrlo zauzet i ima puno elemenata vizualnog dizajna. Ali na kraju postoji samo 5 prekidača:

  1. 'Fred Scoring': Ako je uključeno 'On', mijenja se bodovno ponašanje i odlučuje pobjednika na temelju razlike od 2 boda na 13, a ne samo na prvom koji je postigao 13.
  2. 'Bluetooth uparivanje': (ako je omogućeno) ako je uključeno "Uključeno" omogućuje uparivanje s ovom aplikacijom s vanjskim zaslonom Petanque.
  3. "Poništi podudaranja": Ako je uključeno "Uključeno", resetirat će se/izbrisati sva podudaranja i započeti s Podudaranjem 1.
  4. "Poništi DB": Ako je uključeno "Uključeno", izbrisat će se/vratiti sve podudarnosti i sve ostale postavke aplikacije na izvorne postavke, uključujući trenutni rezultat, utakmice, nazive momčadi, postavke za ispravljanje pogrešaka, redoslijed razvrstavanja, postavke Bluetooth -a (ako je omogućeno) itd..
  5. "Otklanjanje pogrešaka": Ako je uključeno "Uključeno", prikazat će se informacije o otklanjanju pogrešaka u cijeloj aplikaciji između uglatih zagrada "". Stvari poput 'Ukupan broj zapisa, Ukupan broj varijabli, Broj trenutne utakmice, PK broj igre itd.

Konačno na dnu je navigacijska izbornička traka. Ovo se uvijek nalazi na apsolutnom dnu zaslona, bez obzira na veličinu zaslona. Čak i ako se koristi funkcija Android 'Split screen' ili je zaslon samo viši nego što se zaslon može prikazati zbog broja stavki na zaslonu. U tom slučaju uvijek se možete pomicati prevlačenjem gore i dolje. Ovaj donji navigacijski izbornik ima samo 1 gumb:

Dolje lijevo: gumb '<-' ide lijevo i prikazuje početni prikaz pregleda svih zaslona Utakmica (#2)

Korak 6: Zaslon 0 (O programu)

Zaslon 0 (O programu)
Zaslon 0 (O programu)

Završni ekran. Samo informacije, ništa više.

Ovaj se zaslon prikazuje pri prvom pokretanju ove aplikacije. Nakon toga više se neće prikazati, osim ako ste to odlučili pritiskom na '?' gumb na glavnom ekranu #1.

Donja navigacijska izbornička traka ima samo 1 gumb i to vas vraća na glavni zaslon #1.

Korak 7: Softver i/ili izvorni kod

Softver i/ili izvorni kod
Softver i/ili izvorni kod

Konačno.

Aplikaciju možete preuzeti s ove lokacije Google diska.

Kôd možete preuzeti iz stavke galerije izumitelja aplikacija MIT -a za Pentaque (slika #1). To će vam omogućiti spremanje projekta na vlastiti račun MIT App Inventor (možete ga preimenovati u što god želite). Odatle možete vidjeti sav kôd u uređivaču blokova, zaslone u uređivaču Designer i sve medije i resurse koji se koriste za ovaj projekt.

Također možete preuzeti izvorni kod (.aia datoteku, koja je zapravo.zip datoteka) s ove lokacije Google diska.

Preporučeni: