Плагин расширения ExtUI
08.01.2017
Плагин расширения ExtUI предназначен для увеличения нативных возможностей UI DroidScript путём предоставления доступа к объектам и методам API Android.
Загрузить архив плагина (версия 1.01)
Для установки плагина:
- Скачайте и распакуйте загруженный архив
- Скопируйте ExtUI.apk в папку DroidScript/Plugins
- Перезапустите DroidScript
Плагин расширения позволяет:
- Создавать новые виджеты API Android, которых нет в DroidScript
- Производить детальную настройку свойств виджетов DroidScript при помощи новых методов
Плагин расширения не имеет определённого и готового набора объектов и методов, поскольку это ограничило бы облаcть его использования. Объекты и методы в нём создаются динамически, благодаря чему можно реализовать интерфейс к новым объектам и методам в любом необходимом объёме.
Плагин расширения имеет всего несколько простых методов, благодаря чему работать с ним крайне просто.
Методы:
- GetVersion() - возвращает версию плагина
plg.GetVersion(); // 1.01
- GetMethods( str classSimpleName ):[str] - возвращает список методов и их параметров для заданного класса.
- CreateExtObject( str classSimpleName ):{} - создаёт объект заданного класса
plg.CreateExtObject( 'RatingBar' );
- runMethodNot( {} obj, str methodName, [str] paramsTypesList, p1, p2, p3, p4 ):str - направляет плагину команду выполнить метод для заданного объекта. Значения параметров передаются в переменных p1-p4, их типы - в параметре paramsTypesList чере запятую. Метод возвращает результат работы - значение (для методов-геттеров), пустую строку (для методов-сеттеров) или строку с описанием ошибки.
plg.CreateExtObject( my_obj, 'updateDate', 'int,int,int', 2017, 0, 1 );// установка даты в календаре
- SetParamObject( {} obj, int num ) - направляет плагину объект для использования его в качестве параметра. Плагину можно передать до 4 параметров-объектов, которые сохраняются в массиве объектных параметров. Номер параметра от 0 до 3 передаётся в параметре num. Для очистки массива объектных параметров задайте num = -1. Если объектный параметр задан, то при вызове метода runMethodNot в качестве параметра будет использоваться данный объект, в противном случае будет использоваться значение соответствующего параметра p1-p4 данного метода
plg.SetParamObject( my_obj, 0 ); // присваивает первому пареметру ссылку на объект
- SetOnEvent( {} obj, str eventName, callback ) - задаёт ФОВ для определения действий при возникновении события. В версии плагина 1.01 определены два действия - SetOnTouch и SetOnDateChanged
Для более удобного вызова методов API Android можно создать адаптер.
Пример работы с плагином.