Мазмұны:

Petanque / Jeu-de-Boules ұпайларды сақтауға өтінім: 7 қадам
Petanque / Jeu-de-Boules ұпайларды сақтауға өтінім: 7 қадам

Бейне: Petanque / Jeu-de-Boules ұпайларды сақтауға өтінім: 7 қадам

Бейне: Petanque / Jeu-de-Boules ұпайларды сақтауға өтінім: 7 қадам
Бейне: Испытание персонажа Diablo на поле боя Hearthstone 2024, Шілде
Anonim
Petanque / Jeu-de-Boules ұпайларды сақтауға арналған қосымша
Petanque / Jeu-de-Boules ұпайларды сақтауға арналған қосымша
Petanque / Jeu-de-Boules ұпайларды сақтауға арналған қосымша
Petanque / Jeu-de-Boules ұпайларды сақтауға арналған қосымша
Petanque / Jeu-de-Boules ұпайларды сақтауға арналған қосымша
Petanque / Jeu-de-Boules ұпайларды сақтауға арналған қосымша

Бұл Android үшін Petanque ұпайларын сақтауға арналған қосымша (кейде Джеу де Булес деп те аталады). Бұл қосымшаны бұрынғы күйінде қолдануға болады және толық жұмыс істейді. Немесе оны Petanque Matrix дисплейімен бірге қолдануға болады [бөлек нұсқаулар]. Жобаның бұл бөлімі оңай, себебі жабдық қажет емес, тек ақысыз бағдарламалық қамтамасыз ету қажет.

Жабдықтар

  1. Android үйлесімді телефон (жақсырақ)
  2. Интернет -шолғышқа кіруге болатын құрылғы, жақсырақ кодтау мен жобалауға арналған тінтуірі бар компьютер
  3. MIT App Inventor бар шот (ақысыз)
  4. Қарапайым сурет салу пакеті, мысалы. Pixlr немесе Gimp (барлығы тегін)
  5. Белгіше ресурстарының веб -сайты, мысалы. Material UI белгішелері немесе Material.io (барлығы тегін)

Бағдарламалық қамтамасыз ету және бастапқы код:

Сіз осы беттің төменгі жағында Actual Petanque қосымшасына сілтеме таба аласыз. Мұнда сіз толық бастапқы кодқа сілтеме таба аласыз (кешіріңіз, бірақ Instructables маған.aia файлын жүктеуге мүмкіндік бермейді …).

1 -қадам: Анатомия және қосымшаның навигациясы

Қолданбаның анатомиясы мен навигациясы
Қолданбаның анатомиясы мен навигациясы

Бағдарламаның дизайны мен навигациясы өте қарапайым. Барлығы 4 экран бар:

  1. Негізгі экран №1 (біз көп уақытты ұпай жинауға жұмсаймыз)
  2. №2 матчтар экраны (мұнда біз барлық матчтар мен ұпайлардың тізімін табамыз)
  3. №3 параметрлер экраны (қосымшаның параметрлері, әкімшілік тапсырмалар, күйін келтіру және т.
  4. № 0 экран туралы (логотип және құрастыру нұсқауларын қайдан алуға болады, яғни бұл веб -бет)

Экранның орналасуы мен түймелердің орналасуы 1 қолмен және 1 саусақпен (бармақпен) оңтайландырылған. Навигацияның төменгі мәзіріндегі түймелер сізді ағымдағы экранның оң немесе сол жағындағы экрандарға апарады. Сонымен, 0 түймесі сізді No 0 экранға әкеледі. Ал №1 түймесі сізді негізгі экранға #1 және т.б. қайтарады.

Таза? Әрі қарай жалғастырайық …

2 -қадам: Деректер (базалық) дизайны

Деректер (базалық) дизайны
Деректер (базалық) дизайны
Деректер (базалық) дизайны
Деректер (базалық) дизайны

Енді, бірінші экранды жасамас бұрын бізге осы қолданба қолданатын барлық деректерді сақтайтын орын қажет. Ол үшін біз MIT App Inventor ұсынатын ең қарапайым форманы қолданамыз: TinyDB. Бұл өте шектеулі, себебі ол тек кілт/мән жұбын сақтай алады, бірақ сәл көмек пен кейбір амалдардың көмегімен біз мұны қалағанымыздың бәрін жасай аламыз.

Біз сақтайтын мәндердің 2 түрі бар:

  • Біз қолданба бойынша 10 қарапайым кілт/мәнді сақтаймыз (жоғарыдағы 'CreateIgnoreList' функциясында көрсетілгендей).
  • Негізгі кілт * ретінде әрекет ететін 'CurrentMatch' кілті/мәні бар барлық аяқталған ойын деректерін бір жолда сақтайтын күрделі кілт/мән (жоғарыдағы 'SaveScore' функциясында көрсетілгендей). Осы бір кілт/мән жұбындағы бұл өрістер визуалды емес басқару таңбасымен '\ t' бөлінген. Бұл басқару таңбасы бізге сәйкестіктер №2 экранында барлық мәндерді жеке компоненттерге шығаруға және оларды көрсетуге және сұрыптауға мүмкіндік береді. Бұл туралы толығырақ 2 -бөлімде (сәйкес келеді).

* YouTube -те AppInventor бағдарламасында TinyDb үшін PrimaryKey құру туралы қосымша ақпарат.

3 -қадам: 1 -экран (Негізгі)

1 -экран (Негізгі)
1 -экран (Негізгі)
1 -экран (Негізгі)
1 -экран (Негізгі)
1 -экран (Негізгі)
1 -экран (Негізгі)

Бұл біздің «жұмыс аттары» экраны, онда біз көп уақытты қолданушы ретінде өткіземіз. Бұл біздің MIT App Inventor қосымшасының бастапқы нүктесі.

Жоғарыда (№1 суреттен) көріп тұрғаныңыздай, экран қарапайым күйде болса да, интерактивтілік, қателерді өңдеу, жылжыту, бөлінген экран, өзгермелі мәзір, сырғыту қимылдары, қателіктерден, қате енгізулерден және тіпті қалпына келтіруден жасырын интерактивтілік бар. апаттардан. Барлық осы мүмкіндіктер үшін әр экранның егжей -тегжейлі бастапқы кодын қараңыз. Сонымен, мұнда не істеуге болады:

  • «1 -ші команда» түймесін басыңыз, сонда сіз «1 -топ» атауын өзгертуге мүмкіндік беретін хабарлама аласыз. Бұл өзгертілгеннен кейін бұл «1 -топ» сіз таңдаған атқа өзгереді. Бұл сондай -ақ сіздің «ойын» және «сәйкестік» ұпайларыңызды көрсету үшін қолданылатын атау (келесі экрандарда).
  • Әр команданың төменгі жағында басылған '+' және '-' түймелерінің негізінде «1-ші команданың ұпайы» мен «2-ші команданың ұпайы» өзгереді. Егер балл 0 болса және '-' басылса, дыбыстық және визуалды сигнал беріледі, бірақ баға 0 болып қалады (әрине).
  • Егер «балл» 13 -ке жетсе, бірнеше нәрсе болады: визуалды сигнал беріледі, хабарлама терезелері нәтижелерді көрсетеді (сурет № 2) және сізге жаңа ойын немесе жаңа матчты бастау мүмкіндігін береді (және, әрине, жаңа) ойын). Егер сіз классикалық Petanque ұпайын емес, 2 ұпайлық айырмашылықты таңдасаңыз (оны №3 параметрлер экранында таңдауға болады), екі команданың айырмашылығына байланысты жеңімпаз деп танылады (№3 суретте көрсетілгендей)).
  • Ағымдағы «матчтағы» «ұпай» экранның ортасында «1 -ші команда» мен «2 -ші команданың» ұпайларының арасында көрсетіледі. Және бұл жаңа «матч» басталғанға дейін кестені жалғастырады.
  • Басқа экрандарға өту үшін сіз «Солға қарай сырғытыңыз» туралы No 0 экранды немесе «Оңға қарай сырғытыңыз» №2 сәйкестіктер экранын көрсете аласыз.

Соңында төменгі жағында навигациялық мәзір бар. Бұл экранның өлшеміне қарамастан, әрқашан экранның түбінде орналасады. Тіпті егер Android 'Split screen' функциясы қолданылса да. Навигацияның төменгі мәзірінде 3 түйме бар:

  1. Төменгі сол жақта: '?' түймесі солға кетеді және бастапқы іске қосу туралы экранды (#0) қайтадан көрсетеді.
  2. Төменгі ортада: қалпына келтіру түймесі (көрсеткісі бар «@» сияқты) сізге кез келген уақытта жаңа ойынды немесе жаңа матчты бастауға мүмкіндік береді, тек төменгі ортасындағы «Қалпына келтіру» түймесін басыңыз. Бұл сізге жаңа ойын немесе жаңа матч бастауды сұрайтын хабарландыру терезесі болады.
  3. Төменгі оң жақта: '->' түймесі оңға жылжиды және барлық сәйкестіктер экранының шолуын көрсетеді (№ 2).

4 -қадам: 2 -экран (сәйкестік)

2 -экран (сәйкестік)
2 -экран (сәйкестік)
2 -экран (сәйкестік)
2 -экран (сәйкестік)
2 -экран (сәйкестік)
2 -экран (сәйкестік)

Көрнекі макияжда өте қарапайым болғанымен, бұл экранда басқа экрандарға қарағанда қызықты код бар. Бірақ оған кіріспес бұрын оның экранда не істейтінін көрейік:

«1 -ші команда» және «2 -ші команда» жапсырмаларының астында барлық матчтардың тізімі және олардың тиісті жалпы ұпайлары бар. Бұл сұрыпталған тізім, жоғарғы жағында «соңғы ойнаған матч» және төменгі жағында «ең ескі матч» бар.

Ортада '1 -ші команда' мен '2 -ші топтың' арасында матчтар тізімін өсу немесе кему ретімен сұрыптауға болатын түйме бар. Таңдалған сұрыптау бағытына байланысты белгіше өзгереді.

Басқа экрандарға өту үшін «No1» негізгі экранын көрсету үшін «Солға сырғытыңыз» немесе «Параметрлер» экранын көрсету үшін «Оңға сырғытыңыз».

Соңында төменгі жағында навигациялық мәзір бар. Бұл экранның өлшеміне қарамастан, әрқашан экранның түбінде орналасады. Тіпті Android 'Split screen' функциясы қолданылса да (№2 суретте көрсетілгендей). Навигацияның төменгі мәзірінде 3 түйме бар:

  1. Төменгі сол жақта: '?' түймесі солға кетеді және бастапқы іске қосу туралы экранды (#0) қайтадан көрсетеді.
  2. Төменгі ортада: қалпына келтіру түймесі (көрсеткісі бар «@» сияқты) сізге кез келген уақытта жаңа ойынды немесе жаңа матчты бастауға мүмкіндік береді, тек төменгі ортасындағы «Қалпына келтіру» түймесін басыңыз. Бұл сізге жаңа ойын немесе жаңа матч бастауды сұрайтын хабарландыру терезесі болады.
  3. Төменгі оң жақта: '->' түймесі оңға жылжиды және барлық сәйкестіктер экранының шолуын көрсетеді (№ 2).

Сәйкестіктер тізімін экранда ортаға салу:

Мен ортасында '-' бөлгішпен экранда орталықтандырылған матчтар тізімін көрсеткім келді. Енді, команданың жеңген ойындарының саны 1 немесе одан да көп цифр болуы мүмкін және әр команданың нақты атауы әр түрлі болуы мүмкін, біз мұны 1 тізімге енгізе алмаймыз. Мұның бәрі келесідей болады:

1 команда 0 - 1 2 команда

Foo 1 - 42 FooBar

Сондықтан '-' бөлгішінің белгісін ортасына қою керек. «1-ші команданың аты» мен «1-ші команданың ұпайы» оңға «-» бөлгішінің сол жағына тураланады. Ал '2-топтың ұпайы' мен '2-команданың аты' солға '-' бөлгішінің оң жағына тураланады. Сонымен біз осылай аяқтаймыз:

«1 команда» 0 «»-«» 1 команда 2 «» Фу 1 «»-«» 42 FooBar «

Мен сәйкестіктер тізімі қанша уақыт болатынын білмеймін, мен барлық «Команда 1 атауын» және «Команда 1 ұпайын» сол HTMLFormat белгісіне енгіземін және әр матчтан кейін а енгізіп, келесі жолды NewLine -ге қоямын..

Сұрыптауға заттарды дайындаңыз:

Деректер (базалық) жобалау қадамында айтылғандай, мен тек бір ғана мәнді сақтай аламын. Сондықтан мен '\ t' визуалды емес бақылау таңбасымен бөлінген 'Team 1 name', 'Team 1 score', 'Team 2 score' және 'Team 2 name' мәндерін сақтадым. Енді мен оларды алдымен дерекқордан шығаруым керек (No3 суретте көрсетілгендей).

Код үзіндісі алдымен Отладка жалаушасының орнатылғанын тексеретінімізді көрсетеді (бұл осы қосымшаның әр экранында орындалады. Содан кейін ол дерекқордан өту кезінде елемеуіміз керек кілттердің тізімін жасайды. Бізді тек «Сәйкестендіру» деректері қызықтырады, басқа ештеңе жоқ. Содан кейін біз елемейтін тізімдегі барлық кілттерді елемей, дерекқорды айналдырамыз және 2 мәні бар жаңа тізім жасаймыз:

  1. PrimaryKey (бұл №1 матчтан басталатын сәйкестік нөмірін көрсететін сан екенін ұмытпаңыз)
  2. '1 -топтың аты', '1 -команданың ұпайы', '2 -команданың ұпайы' және '2 -топтың атауы' мәндерінің мәндері бар жол

Содан кейін біз Тізім бойынша жүріп, жеке тізімдер жеке элементтерге бөлінген жаңа тізімдер тізімін жасаймыз (№4 суретте көрсетілгендей):

DataToSort -> Тізім индексі 1 -> Тізім индексі 1 (PK нөмірі)

-> Тізім индексі 2 (Топтың аты 1) -> Тізім индексі 3 (Команданың ұпайы 1) -> Тізім индексі 4 (Топтың ұпайы 2) -> Тізім индексі 5 (Топтың аты 2) -> Тізім индексі 2 -> Тізім индексі 1 (PK нөмірі) -> Тізім индексі 2 (Топтың аты 1) ->… ->…

Осыдан кейін біз Отладка жалауы ақиқат болса, біз отладка туралы кейбір ақпаратты көрсетеміз. Енді біз өз тізімімізді (тізімдерді) сұрыптай аламыз.

BubbleSort* тізімдер тізімі:

№5 сурет BubbleSort* тізімінің толық тізімін көрсетеді. Бұл алгоритм, әрине, қанша индекс болса да, кез келген көлемдегі тізімдер тізімі үшін қолданыла алады.

* YouTube -те BubbleSort алгоритмінің қаншалықты қарапайым екендігі туралы қосымша ақпарат.

5 -қадам: 3 -экран (Параметрлер)

3 -экран (Параметрлер)
3 -экран (Параметрлер)

Бұл экран өте бос көрінеді және көптеген визуалды дизайн элементтері бар. Бірақ соңында тек 5 қосқыш бар:

  1. 'Фред Скоринг': Егер «Қосулы» күйіне ауысса, ол ұпай жинау мінез -құлқын өзгертеді және 13 ұпай айырмашылығының негізінде жеңімпазды анықтайды, 13 -ке жеткен бірінші емес.
  2. 'Bluetooth Pairing': (қосылған кезде) «On» қосулы болса, осы қосымшаның сыртқы Petanque дисплейімен жұптастыруға мүмкіндік береді.
  3. 'Сәйкестікті қалпына келтіру': Егер «Қосулы» күйіне ауысса, ол барлық сәйкестіктерді қалпына келтіреді/жояды және 1 -матчтан басталады.
  4. 'ДБ қалпына келтіру': егер «Қосулы» күйіне ауысса, ол барлық сәйкестіктерді және барлық басқа қосымшаның параметрлерін бастапқы параметрлерге, соның ішінде ағымдағы ұпайға, сәйкестіктерге, топтардың аттарына, күйін келтіру параметрлеріне, сұрыптау тәртібіне, luetooth параметрлеріне (қосылған кезде) және т.б. қалпына келтіреді..
  5. 'Жөндеу': егер «Қосулы» күйіне қосылса, ол « 'төртбұрышты жақшалар арасында қолданба бойынша жөндеу туралы ақпаратты көрсетеді. «Жазбалардың жалпы саны, айнымалылардың жалпы саны, ағымдағы сәйкестік нөмірі, ойынның PK нөмірі және т.

Соңында төменгі жағында навигациялық мәзір бар. Бұл экранның өлшеміне қарамастан, әрқашан экранның түбінде орналасады. Егер Android 'Split screen' функциясы қолданылса да немесе экран экрандағы элементтердің санына байланысты экран көрсете алатыннан биік болса да. Бұл жағдайда әрқашан жоғары және төмен сырғыту арқылы жылжуға болады. Бұл төменгі навигация мәзірінде тек 1 түйме бар:

Төменгі сол жақта: '<-' түймесі солға кетеді және барлық матчтар экранының шолуының бастапқы көрсетілімін көрсетеді (#2)

6 -қадам: 0 экран (шамамен)

0 экран (шамамен)
0 экран (шамамен)

Қорытынды экран. Тек ақпарат, басқа ештеңе жоқ.

Бұл экран бұл бағдарлама бірінші рет іске қосылған кезде көрсетіледі. Осыдан кейін ол '?' Түймесін басу арқылы таңдалмаса, ол ешқашан көрсетілмейді. Негізгі экрандағы №1 батырмасы.

Төменгі шарлау мәзірінде тек 1 түйме бар, бұл сізді №1 негізгі экранға қайтарады.

7 -қадам: Бағдарламалық қамтамасыз ету және/немесе бастапқы код

Бағдарламалық қамтамасыз ету және/немесе бастапқы код
Бағдарламалық қамтамасыз ету және/немесе бастапқы код

Соңында.

Қолданбаны осы Google Drive орнынан жүктеуге болады.

Сіз кодты Pentaque үшін MIT App Inventor Gallery жазбасынан жүктей аласыз (сурет 1). Бұл сізге жобаны MIT App Inventor есептік жазбасына сақтауға мүмкіндік береді (оны қалағаныңызша өзгертуге болады). Ол жерден сіз Blocks редакторындағы барлық кодты, Designer редакторындағы экрандарды және осы жоба үшін қолданылатын барлық медиа мен ресурстарды көре аласыз.

Сондай -ақ, осы Google Drive орнынан бастапқы кодты (.aia файлы, ол.zip файлы) жүктей аласыз.

Ұсынылған: