Варианты создания и запуска скрипта

Материал из iRidium Mobile Wiki
Перейти к: навигация, поиск

Запуск скрипта через создание слушателей

Слушатель - это функция, которая выполняется в случае срабатывания указанного ей события.

// Объявляем слушателя на события запуска приложения
IR.AddListener(IR.EVENT_START, 0, function()  
{
   // Тело слушателя 
});


Пример запуска скрипта через написание слушателей

ЗАГРУЗИТЬ: Пример проекта

X1.png


X24.png


X25.png


X20.png


  • Пример написанного слушателя:
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");
    });
});


X21.png


X17.png


Примеры слушателей

  • IR.EVENT_START - начало работы клиента
IR.AddListener(IR.EVENT_START, 0, function()  //Выполнение действий по старту
{
     IR.Log("Start");   
});
  • IR.EVENT_WORK - цикличное выполнение во время работы клиента
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 - выход из клиента
IR.AddListener(IR.EVENT_EXIT, 0, function()  //Действие выполняется по выходу
{
     IR.Log("Exit");   
});
  • IR.EVENT_ITEM_PRESS - нажатие на итем (итемом может быть объект, попап, страница)

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 - отпускание элемента

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 - клик на элемент списка
// Собыите, которое срабатывает при нажатии на Элемент списка
IR.AddListener(IR.EVENT_ITEM_SELECT, IR.GetItem("Page 1").GetItem("Item 1"), function(item, subItem)  
     {
        list.DeleteItem(item); // Удаляем третий элемент листа
     });
  • IR.EVENT_GESTURE_BEGIN - начало жеста
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 - подключение к устройству (драйверу)
IR.AddListener(IR.EVENT_ONLINE , 0, function()
{
     IR.Log("Device is online");   
});
  • IR.EVENT_OFFLINE - отключение устройства (драйвера)
IR.AddListener(IR.EVENT_OFFLINE , 0, function()
{
     IR.Log("Device is offline");   
});
  • IR.EVENT_RECEIVE_DATA - получение данных с устройства (бинарные данные)
IR.AddListener(IR.EVENT_RECEIVE_DATA , 0, function(text)
{
     IR.Log(text); //Выводит информацию полученную от устройства в байт формате   
});
  • IR.EVENT_RECEIVE_TEXT - получение данных с устройства (строковый формат)
IR.AddListener(IR.EVENT_RECEIVE_TEXT , 0, function(text)
{
     IR.Log(text); //Выводит информацию полученную от устройства в строковом формате      
});
  • IR.EVENT_TAG_CHANGE - изменение значения тега
IR.AddListener(IR.EVENT_TAG_CHANGE , 0, function(name,value)
{
     IR.Log("Name = "+name+"  value = "+value);
//Выводит в консоль имя измененного тега и его новое значение    
});
  • IR.EVENT_KEYBOARD_SHOW - открытие клавиатуры
IR.AddListener(IR.EVENT_KEYBOARD_SHOW, 0, function()
{
     IR.Log("keyboard showed on screen");   
});
  • IR.EVENT_ORIENTATION - смена ориентации устройства
IR.AddListener(IR.EVENT_ORIENTATION, 0, function(orientation) 
//Событие срабатывает при смене ориентации устройства
  {
    IR.Log(orientation); 
//положение устройства(0 - горизонтальное, 1 - вертикальное)
   
  });   
  • IR.EVENT_MOUSE_DOWN - движение мыши вниз
IR.AddListener(IR.EVENT_MOUSE_DOWN, 0, function()
{
     IR.Log("Mouse Down");   
});
  • IR.EVENT_MOUSE_UP - движение мыши вверх
IR.AddListener(IR.EVENT_MOUSE_UP, 0, function()
{
     IR.Log("Mouse Up");   
});
  • IR.EVENT_MOUSE_MOVE - движение мыши в любом направлении
IR.AddListener(IR.EVENT_MOUSE_MOVE, 0, function()
{
     IR.Log("Mouse Move");   
});
  • IR.EVENT_TOUCH_DOWN - движение пальцем вниз
IR.AddListener(IR.EVENT_TOUCH_DOWN, 0, function()
{
     IR.Log("touch down");   
});
  • IR.EVENT_TOUCH_UP - движение пальцем вверх
IR.AddListener(IR.EVENT_TOUCH_UP, 0, function()
{
     IR.Log("touch up");   
});
  • IR.EVENT_TOUCH_MOVE - движение пальцем в любую сторону
IR.AddListener(IR.EVENT_TOUCH_MOVE, 0, function()
{
     IR.Log("touch move");   
});
  • IR.EVENT_ITEM_CHANGE - изменение элемента editbox
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 редактора.

X1.png


X2.png


X3.png


X4.png


X5.png


  • Пример написанной функции:
function MyFunction()
{
 IR.Log("Hello World");
}


X6.png


X7.png


X8.png


X9.png


X10.png


X11.png


X12.png


X13.png


X14.png