Варианты создания и запуска скрипта
Материал из iRidium Mobile Wiki
Содержание
[убрать]Запуск скрипта через создание слушателей
Слушатель - это функция, которая выполняется в случае срабатывания указанного ей события.
1 2 3 4 5 | // Объявляем слушателя на события запуска приложения IR.AddListener(IR.EVENT_START, 0, function () { // Тело слушателя }); |
Пример запуска скрипта через написание слушателей
- Пример написанного слушателя:
1 2 3 4 5 6 7 8 9 10 11 12 13 | IR.AddListener(IR.EVENT_START, 0, function () // Действия выполняемые при старте приложения { /* Создаем элемент типа Button и записываем его идентификатор в переменную button */ var button = IR.CreateItem(IR.ITEM_BUTTON, "button1" , 10, 10); IR.AddListener(IR.EVENT_ITEM_PRESS, button, function () // Действия выполняемы при старте приложения { IR.Log( "Hello World" ); }); }); |
Примеры слушателей
- IR.EVENT_START - начало работы клиента
1 2 3 4 | IR.AddListener(IR.EVENT_START, 0, function () //Выполнение действий по старту { IR.Log( "Start" ); }); |
- IR.EVENT_WORK - цикличное выполнение во время работы клиента
1 2 3 4 5 6 7 8 9 10 11 12 | var timer = 0; var onTime = 800; // 800 ms = 0.8 s IR.AddListener(IR.EVENT_WORK, 0, function (time) //Выполнение действий при работе { timer += time; if (timer > onTime) { timer = 0; IR.Log( "Click" ); } }); |
- IR.EVENT_EXIT - выход из клиента
1 2 3 4 | IR.AddListener(IR.EVENT_EXIT, 0, function () //Действие выполняется по выходу { IR.Log( "Exit" ); }); |
- IR.EVENT_ITEM_PRESS - нажатие на итем (итемом может быть объект, попап, страница)
1 2 3 4 5 6 7 8 9 10 11 | IR.AddListener(IR.EVENT_START, 0, function () { var popup = IR.CreateItem(IR.ITEM_POPUP, "popup1" , 150, 10, 200, 200); var button = IR.CreateItem(IR.ITEM_BUTTON, "button1" , 10, 10); button.Text = "popup1" ; IR.AddListener(IR.EVENT_ITEM_PRESS, button, function () { IR.TogglePopup( "popup1" ); }); }); |
- IR.EVENT_ITEM_RELEASE - отпускание элемента
1 2 3 4 5 6 7 8 9 10 11 | IR.AddListener(IR.EVENT_START, 0, function () { var popup = IR.CreateItem(IR.ITEM_POPUP, "popup1" , 150, 10, 200, 200); var button = IR.CreateItem(IR.ITEM_BUTTON, "button1" , 10, 10); button.Text = "popup1" ; IR.AddListener(IR.EVENT_ITEM_RELEASE, button, function () { IR.TogglePopup( "popup1" ); }); }); |
- IR.EVENT_ITEM_SELECT - клик на элемент списка
1 2 3 4 5 | // Собыите, которое срабатывает при нажатии на Элемент списка IR.AddListener(IR.EVENT_ITEM_SELECT, IR.GetItem( "Page 1" ).GetItem( "Item 1" ), function (item, subItem) { list.DeleteItem(item); // Удаляем третий элемент листа }); |
- IR.EVENT_GESTURE_BEGIN - начало жеста
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 | var button; // Вызывается при старте IR.AddListener(IR.EVENT_START, 0, function () { // Создаем кнопку для переключения между страницами var button = IR.CreateItem(IR.ITEM_BUTTON, "text" , 10, 10); button.Text = "" ; // Жесты IR.AddRecognizer(IR.GESTURE_SWIPE_LEFT); IR.AddRecognizer(IR.GESTURE_SWIPE_RIGHT); IR.AddRecognizer(IR.GESTURE_SWIPE_UP); IR.AddRecognizer(IR.GESTURE_SWIPE_DOWN); IR.AddListener(IR.EVENT_GESTURE_BEGIN, IR.CurrentPage, function (gesture) { switch (gesture) { case IR.GESTURE_SWIPE_LEFT: button.Text = "Left" ; break ; case IR.GESTURE_SWIPE_RIGHT: button.Text = "Right" ; break ; case IR.GESTURE_SWIPE_UP: button.Text = "Up" ; break ; case IR.GESTURE_SWIPE_DOWN: button.Text = "Down" ; break ; } }); }); |
- IR.EVENT_ONLINE - подключение к устройству (драйверу)
1 2 3 4 | IR.AddListener(IR.EVENT_ONLINE , 0, function () { IR.Log( "Device is online" ); }); |
- IR.EVENT_OFFLINE - отключение устройства (драйвера)
1 2 3 4 | IR.AddListener(IR.EVENT_OFFLINE , 0, function () { IR.Log( "Device is offline" ); }); |
- IR.EVENT_RECEIVE_DATA - получение данных с устройства (бинарные данные)
1 2 3 4 | IR.AddListener(IR.EVENT_RECEIVE_DATA , 0, function (text) { IR.Log(text); //Выводит информацию полученную от устройства в байт формате }); |
- IR.EVENT_RECEIVE_TEXT - получение данных с устройства (строковый формат)
1 2 3 4 | IR.AddListener(IR.EVENT_RECEIVE_TEXT , 0, function (text) { IR.Log(text); //Выводит информацию полученную от устройства в строковом формате }); |
- IR.EVENT_TAG_CHANGE - изменение значения тега
1 2 3 4 5 | IR.AddListener(IR.EVENT_TAG_CHANGE , 0, function (name,value) { IR.Log( "Name = " +name+ " value = " +value); //Выводит в консоль имя измененного тега и его новое значение }); |
- IR.EVENT_KEYBOARD_SHOW - открытие клавиатуры
1 2 3 4 | IR.AddListener(IR.EVENT_KEYBOARD_SHOW, 0, function () { IR.Log( "keyboard showed on screen" ); }); |
- IR.EVENT_ORIENTATION - смена ориентации устройства
1 2 3 4 5 6 7 | IR.AddListener(IR.EVENT_ORIENTATION, 0, function (orientation) //Событие срабатывает при смене ориентации устройства { IR.Log(orientation); //положение устройства(0 - горизонтальное, 1 - вертикальное) }); |
- IR.EVENT_MOUSE_DOWN - движение мыши вниз
1 2 3 4 | IR.AddListener(IR.EVENT_MOUSE_DOWN, 0, function () { IR.Log( "Mouse Down" ); }); |
- IR.EVENT_MOUSE_UP - движение мыши вверх
1 2 3 4 | IR.AddListener(IR.EVENT_MOUSE_UP, 0, function () { IR.Log( "Mouse Up" ); }); |
- IR.EVENT_MOUSE_MOVE - движение мыши в любом направлении
1 2 3 4 | IR.AddListener(IR.EVENT_MOUSE_MOVE, 0, function () { IR.Log( "Mouse Move" ); }); |
- IR.EVENT_TOUCH_DOWN - движение пальцем вниз
1 2 3 4 | IR.AddListener(IR.EVENT_TOUCH_DOWN, 0, function () { IR.Log( "touch down" ); }); |
- IR.EVENT_TOUCH_UP - движение пальцем вверх
1 2 3 4 | IR.AddListener(IR.EVENT_TOUCH_UP, 0, function () { IR.Log( "touch up" ); }); |
- IR.EVENT_TOUCH_MOVE - движение пальцем в любую сторону
1 2 3 4 | IR.AddListener(IR.EVENT_TOUCH_MOVE, 0, function () { IR.Log( "touch move" ); }); |
- IR.EVENT_ITEM_CHANGE - изменение элемента editbox
1 2 3 4 5 6 | IR.AddListener(IR.EVENT_ITEM_CHANGE, IR.GetItem( "Page 1" ).GetItem( "Item 1" ), function () //Событие происходит при изменении { IR.Log(IR.GetItem( "Page 1" ).GetItem( "Item 1" ).Text); //Происходит вывод в лог, то что изменяется }); |
Пример запуска скрипта используя макрос Script Call
В этом примере будет подробно описан алгоритм запуска скрипта используя Script Call средствами GUI редактора.
- Пример написанной функции:
1 2 3 4 | function MyFunction() { IR.Log( "Hello World" ); } |