Я пытаюсь сделать приложение, используя App Inventor.App Inventor выбрать цвет фона из списка в TinyDB
Приложение имеет больше функций, но я застрял в том, что я сказал бы «базовый». Что я хочу сделать, это в основном изменить цвет фона (или цвет любого элемента), вызвав цвет из списка, хранящегося в TinyDB
.
У меня есть два экрана Screen1 и экран меню. Я звоню по телефону TinyDB
, а Screen1 инициализирует и устанавливает цвет фона приложения в первом списке. Далее я хочу, чтобы пользователь выбирал цвет из списка на другом экране «Меню». После выбора цвета измените цвет на обоих экранах.
Я попытался сделать это в соответствии с инструкцией https://sites.google.com/site/blocks123/playing-with-colors, но для меня это немного запутывает.
На печатном экране у меня есть блоки TinyDB
на экране1. Возможно ли на Screen1 просто позвонить/инициализировать TinyDB
, но есть блоки TinyDB
на другом экране «Меню»?
И когда у меня есть TinyDB
и списки цветов, как изменить цвет на выбранный?
Спасибо Taifun. Ваш учебник был полезен для меня, он думал, что он немного запутан с переменными, которые там не описаны. В любом случае я пытался сделать это немного по-своему, и я думаю, что иду в правильном направлении. Как показано на втором изображении, я сделал это на экране «Меню» и попытался сохранить свой выбор на [TinyDB]. Он работает почти отлично, но кроме ошибки, когда экран «Меню» инициализируется. Я не понимаю, почему я получаю это сообщение, а значение - в списке? И наоборот, как передать переменную BC currentColor в «Screen1»? Если я использую set.Screen1.BackgroundColor это doesntWork
Ну теперь я знаю, что я близко, я чуть не упал в воздухе. Он правильно меняет цвет фона на экране «Меню», но некоторые из них не сохраняют выбор в [TinyDB], как я описываю при комментариях. Где я ошибся? Надеюсь, когда я сохраню цвет «код» в базе данных, я могу позвонить ему на другом экране.
сделать [Учебник по цветным точкам] (http://explore.appinventor.mit.edu/ai2/colored-dots) ... – Taifun
Спасибо Taifun. Этот урок помог мне, подумал, что он немного запутан с переменными, которые там не описаны. В любом случае я попытался сделать это немного по-своему, и я думаю, что иду в правильном направлении. Как показано на другом изображении, я сделал i на экране «Меню» и трансивером, чтобы сохранить свой выбор до [TinyDB]. Он работает почти отлично, но за исключением ошибки, когда экран «Меню» инициализируется. Я не понимаю, почему я получаю это сообщение, а значение находится в списке? И наоборот, как передать переменную BC currentColor в «Screen1»? Если я использую set.Screen1.BackgroundColor, это doesntWork – Jorge
, есть некоторые проблемы в ваших блоках. в первую очередь, они очень громоздки ... переменные '' BCurrentColor'' и 'BC currentColorName' должны быть значениями, а не списками, это помогает узнать, как работать со списками, см. также [Как работать со списками] (http: // www.imagnity.com/tutorials/app-inventor/list-blocks-on-app-inventor/) Saj и [Как работать со списками и списками списков (pdf)] (http://www.appinventor.org /bookChapters/chapter19.pdf) от appinventor.org. Если у вас все еще есть проблемы, позвольте пригласить вас на форум [App Inventor forum] (https://groups.google.com/forum/#!forum/mitappinventortest). – Taifun