Post by BotsOFF on Jun 7, 2020 17:53:24 GMT
AnkuLua предоставляет некоторые функции, чтоб сделать скрипты более гибкими.
toast(String): Отобразит на экране строку String на некоторое время.
Функции связанные с диалоговыми окнами
Следующие функции обеспечивают механику получения входных данных от пользователя для работы скрипта.
AnkuLua вызывает интерфейс как диалоговое окно. Окно может содержать следующие элементы: TextView, EditText, CheckBox, RadioGroup и RadioButton.
Элементы TextView, EditText и CheckBox расположены горизонтально в ряд. Для перехода на новую строку используется функция newRow().
RadioGroup может содержать множество элементов, но только один может быть выбран.
Подробности функция описаны ниже:
dialogInit(): инициализирует новое диалоговое окно. Каждое диалоговое окно должно начинаться с этой функции.
addTextView(String): Добавляет новую строку.
addEditText(String argument, String defaultValue): Добавляет строку для ввода пользователем. Входные данные будут назначены новому аргументу глобальной переменной argument.
addEditPassword(String argument, String defaultValue): Добавляет строку для ввода пользователем. Входные данные будут назначены новому аргументу глобальной переменной argument. Вводимый текст будет скрыт.
addEditNumber(String argument, Integer defaultValue): Добавляет поле ввода пользователем целого числа или дробного. Входные данные будут назначены новому аргументу глобальной переменной argument.
addCheckBox(String argument, String text, boolean defaultValue): Добавляет флажок с текстом. Значения defaultValue обозначают флажок есть (true) или нет (false). Результат функции будет присвоен новому аргументу глобальной переменной argument.
newRow(): Завершает предыдущую горизонтальную строку и создает новую.
addRadioGroup(String argument, integer defaultIndex): Эта функция создает новую группу переключателей. Все следующие функции addRadioButton будут добавлять переключатели в эту группу до следующего addRadioGroup. Индекс выбранного переключателя будет назначен новому аргументу глобальной переменной argument.
addRadioButton(String text, integer index): Создает новый переключатель с текстом text. Целочисленный индекс index представляет значение переключателя во всей группе.
addSpinner(String argument, Table of String, String defaultValue): Добавляет поле с одной строкой из таблицы. Входные данные будут назначены новому аргументу глобальной переменной argument.
addSpinnerIndex(String argument, Table of String, integer defaultValue): Добавляет поле с одной строкой из таблицы и возвращает значение. Входные данные будут назначены новому аргументу глобальной переменной argument не строкой, а целым числом.
addSeparator(): Добавляет разделитель и так же завершает предыдущую строку и начинает новую.
dialogShow(String title): Отображает диалоговое окно с заголовком String title от функции dialogInit до функции dialogShow.
dialogShowFullScreen(String title): Отображает диалоговое окно с заголовком String title от функции dialogInit до функции dialogShow на весь экран (почти).
Значения по умолчанию и предпочтительные значения
Все указанные выше функции, присваивают значения и возвращают их.
AnkuLua предоставляет возможность запоминать эти значения. То есть AnkuLua запомнит настройки для каждого аргумента и применит их, когда диалоговое окно будет создано в следующий раз.
Поэтому значения по умолчанию используются только один раз при первом вызове.
Чтобы удалить записанные настройки, используйте функцию
removePreference(String argument): Удаляет записанные значения.
Пример
Пример можно скачать тут.
Либо посмотреть его ниже
После нажатия кнопки запуск, появится вот такое окно:

Меняем значение как угодно:

Нажимаем "ОК" и видим результат:

Чтобы убедиться в том, что значения функций сохранились, нажмите запуск еще раз.

Предпочтения
Диалог сохраняет результат предыдущего выполнения, но эти значения можно получить только после запуска диалога.
В некоторых случаях, пользователи могут сохранять эти значения, не запуская диалоговых окон. Такие функции описаны ниже:
preferencePutString(String arg, String value), preferencePutNumber(String arg, Number value), preferencePutBoolean(String arg, Boolean value): сохраняет значение value в аргумент arg. Возвращает значения true (успех) или false (ошибка).
preferenceGetString(String arg, String defValue), preferenceGetNumber(String arg, Number defValue), preferenceGetBoolean(String arg, Boolean defValue): Если аргумент arg был сохранен ранее, возвращает сохраненное значение. В противном случае вернет defValue.
removePreference(String arg): Удаляет записанное значение и использует значение по умолчанию при следующем его вызове.
Другое
setButtonPosition(int x, int y), setButtonPosition(Location loc): Устанавливает положение кнопки start/stop. Помогает избежать случайных нажатий при выполнении скрипта.
[Вперед]: Расширенные функции
[Назад]: Функции для настройки скриптов
[Главная]: AnkuLua. Введение
toast(String): Отобразит на экране строку String на некоторое время.
Функции связанные с диалоговыми окнами
Следующие функции обеспечивают механику получения входных данных от пользователя для работы скрипта.
AnkuLua вызывает интерфейс как диалоговое окно. Окно может содержать следующие элементы: TextView, EditText, CheckBox, RadioGroup и RadioButton.
Элементы TextView, EditText и CheckBox расположены горизонтально в ряд. Для перехода на новую строку используется функция newRow().
RadioGroup может содержать множество элементов, но только один может быть выбран.
Подробности функция описаны ниже:
dialogInit(): инициализирует новое диалоговое окно. Каждое диалоговое окно должно начинаться с этой функции.
addTextView(String): Добавляет новую строку.
addEditText(String argument, String defaultValue): Добавляет строку для ввода пользователем. Входные данные будут назначены новому аргументу глобальной переменной argument.
addEditPassword(String argument, String defaultValue): Добавляет строку для ввода пользователем. Входные данные будут назначены новому аргументу глобальной переменной argument. Вводимый текст будет скрыт.
addEditNumber(String argument, Integer defaultValue): Добавляет поле ввода пользователем целого числа или дробного. Входные данные будут назначены новому аргументу глобальной переменной argument.
addCheckBox(String argument, String text, boolean defaultValue): Добавляет флажок с текстом. Значения defaultValue обозначают флажок есть (true) или нет (false). Результат функции будет присвоен новому аргументу глобальной переменной argument.
newRow(): Завершает предыдущую горизонтальную строку и создает новую.
addRadioGroup(String argument, integer defaultIndex): Эта функция создает новую группу переключателей. Все следующие функции addRadioButton будут добавлять переключатели в эту группу до следующего addRadioGroup. Индекс выбранного переключателя будет назначен новому аргументу глобальной переменной argument.
addRadioButton(String text, integer index): Создает новый переключатель с текстом text. Целочисленный индекс index представляет значение переключателя во всей группе.
addSpinner(String argument, Table of String, String defaultValue): Добавляет поле с одной строкой из таблицы. Входные данные будут назначены новому аргументу глобальной переменной argument.
allTroops = {"barbarian", "archer", "giant", "goblin", "wallBreaker",
"balloon", "wizard", "healer", "dragon", "PEKKA" }
addSpinner("training1", allTroops, allTroops[1])
addSpinnerIndex(String argument, Table of String, integer defaultValue): Добавляет поле с одной строкой из таблицы и возвращает значение. Входные данные будут назначены новому аргументу глобальной переменной argument не строкой, а целым числом.
addSeparator(): Добавляет разделитель и так же завершает предыдущую строку и начинает новую.
dialogShow(String title): Отображает диалоговое окно с заголовком String title от функции dialogInit до функции dialogShow.
dialogShowFullScreen(String title): Отображает диалоговое окно с заголовком String title от функции dialogInit до функции dialogShow на весь экран (почти).
Значения по умолчанию и предпочтительные значения
Все указанные выше функции, присваивают значения и возвращают их.
AnkuLua предоставляет возможность запоминать эти значения. То есть AnkuLua запомнит настройки для каждого аргумента и применит их, когда диалоговое окно будет создано в следующий раз.
Поэтому значения по умолчанию используются только один раз при первом вызове.
Чтобы удалить записанные настройки, используйте функцию
removePreference(String argument): Удаляет записанные значения.
Пример
Пример можно скачать тут.
Либо посмотреть его ниже
removePreference("cbValue")
dialogInit()
addTextView("TextViewMessage")
addTextView("TextViewMessage")
addEditText("etValue", "Input EditText value:")
newRow()
addCheckBox("cbValue", "Check Box", false)
addRadioGroup("rgIndex", 1)
addRadioButton("Button 1", 1)
addRadioButton("Button 10", 10)
addRadioButton("Button 11", 11)
newRow()
spinnerItems = {"item 1", "item 2", "item 3", "item 4", "item 5", "item 6", "item 7"}
addTextView("Spinner: ")
addSpinner("spValue", spinnerItems, "item 3")
newRow()
spinnerItems = {"Indexitem 1", "Indexitem 2", "Indexitem 3", "Indexitem 4", "Indexitem 5", "Indexitem 6", "Indexitem 7"}
addTextView("Spinner Index: ")
addSpinnerIndex("spValueIndex", spinnerItems, "Indexitem 3")
newRow()
addTextView("Text End")
dialogShow("Dialog Test")
print(etValue)
if (cbValue) then
print ("CheckBox true")
else
print("CheckBox false")
end
toast ("Selected Button = "..rgIndex)
print ("Selected Button = "..rgIndex)
print ("spValue = " .. spValue)
print ("spValueIndex = " .. spValueIndex)
После нажатия кнопки запуск, появится вот такое окно:
Меняем значение как угодно:
Нажимаем "ОК" и видим результат:
Чтобы убедиться в том, что значения функций сохранились, нажмите запуск еще раз.
Предпочтения
Диалог сохраняет результат предыдущего выполнения, но эти значения можно получить только после запуска диалога.
В некоторых случаях, пользователи могут сохранять эти значения, не запуская диалоговых окон. Такие функции описаны ниже:
preferencePutString(String arg, String value), preferencePutNumber(String arg, Number value), preferencePutBoolean(String arg, Boolean value): сохраняет значение value в аргумент arg. Возвращает значения true (успех) или false (ошибка).
preferenceGetString(String arg, String defValue), preferenceGetNumber(String arg, Number defValue), preferenceGetBoolean(String arg, Boolean defValue): Если аргумент arg был сохранен ранее, возвращает сохраненное значение. В противном случае вернет defValue.
print ("======= simple test ===========")
print("int_test = " .. preferenceGetNumber("int_test", 6))
preferencePutNumber("int_test", 9)
print("int_test = " .. preferenceGetNumber("int_test", 6))
print("string_test = " .. preferenceGetString("string_test", "new"))
preferencePutString("string_test", "default")
print("string_test = " .. preferenceGetString("string_test", "test"))
print("boolean = " .. tostring(preferenceGetBoolean("boolean", true)))
preferencePutBoolean("boolean", false)
print("boolean = " .. tostring(preferenceGetBoolean("boolean", false)))
removePreference(String arg): Удаляет записанное значение и использует значение по умолчанию при следующем его вызове.
Другое
setButtonPosition(int x, int y), setButtonPosition(Location loc): Устанавливает положение кнопки start/stop. Помогает избежать случайных нажатий при выполнении скрипта.
[Вперед]: Расширенные функции
[Назад]: Функции для настройки скриптов
[Главная]: AnkuLua. Введение