Post by AnkuLua on Nov 10, 2016 23:55:42 GMT 9
スクリプトにもっと柔軟性を与えるためにAnkuLuaは次の函数を提供します。
toast(String)
画面に文字列 String をしばらく表示します
対話についての函数
次の函数はユーザーに入力させる仕組みを提供します。
AnkuLuaにはこれらのインターフェースをダイアログで呼びます。
ダイアログは次の元素を提供します: TextView, EditText, CheckBox, RadioGroup , RadioButton.
TextView, EditText とCheckBox は基本的に横に並びます。
新しい列を始めようとすれば、 newRow() 函数を使ってくださいです。
RadioGroup に複数のRadioButtonがあって、中に1つのボタンだけ選べます。
次、これらの函数を説明しましょう
dialogInit()
dialogInit() 新しいダイアログのデザインを始めます。全ての新しいダイアログはこの函数で始まるべきです。
addTextView(String)
addTextView このダイアログボックスに文字列を入れます。
addEditText(String argument, String defaultValue)
addEditText ユーザーに文字列を入力させます。入力した文字列は新しい全域変数に指定します。
defaultValue この文字列のデフォルト値です。
addEditNumber(String argument, integer defaultValue)
addEditNumber ユーザーに数字を入力させる。入力した数字は新しい全域変数に指定します。
addCheckBox(String argument, String text, boolean defaultValue)
addCheckBox 文字列textを表示してるチェックボックスが作り出る。defaultValue はこのチェックボックスのデフォルトは選んだ(true)或いは選ばない(false)を指定します。
チェックボックスの選択結果は新しい全域変数に指定します。
newRow()
今の文字列を終わって、新しい列を始めります。
addRadioGroup(String argument, integer defaultIndex)
この函数は新しいラジオボタングループを作り出します。ここから、次のaddRadioGroupまで、中の全部addRadioButton 函数はこのラジオボタングループに入れられます。
選んだボタンは新しい全域変数に指定します。
addRadioButton(String text, integer index)
文字列textを表示してるラジオボタンが作り出ます。整数 indexはこのボタンが選んだ時の数字を代表します。
addSpinner(String argument, Table of String, String defaultValue)
addSpinner は選択表を作り出します。内容は文字列のテーブルです。
選んだボタンの文字列は新しい全域変数に指定します。
addSpinnerIndex(String argument, Table of String, String defaultValue)
addSpinnerIndex(String argument, Table of String, integer defaultValue)
addSpinnerと一緒、ただし戻り値は選んだ項目の番号(整数、1に始まります)
dialogShow(String title)
dialogShow はdialogInitから、今までの全部dialogに関わる元素を表示する。Dialog boxにタイトルtitleは表示します。
dialogShow(String title)
dialogShowと一緒、ただしdialog boxはほとんど画面全体です。
デフォルトとプレファレンス
上の話のように、結果を提供する函数はいずれもデフォルト値が付いています。もしこのdialogは初めて呼ばれたら、デフォルト値はイニシャル値になります。
戻り値のあるユーザーインターフェース函数に、AnkuLuaがプレファレンス仕組みを提供します。つまり、前回ユーザーの入力した或いは選択した数値をAnkuLuaが覚えて、今度同じdialogが使う時、この数値をイニシャル値にします。
範例
ソースコードダウンロード
ソースコード
一回目呼びます
次のように変更と選択して
OKを選択してから
プレファレンスの効果を展示するために、再びplayをタップして、画面に前回と同じ結果が出ます。
プレファレンス設定(preference)
dialogは前回実行した結果を保存するけど、dialogを呼ばなければ、この数値は手に入れない、ある程度不便です。
他にdialogと関係ない数値も保存したければ、次の函数を使ってください。
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を戻します
[次のページ]: 上級の函数
[前のページ]: 基礎オブジェクトと函数
[ホーム]: AnkuLua紹介
toast(String)
画面に文字列 String をしばらく表示します
対話についての函数
次の函数はユーザーに入力させる仕組みを提供します。
AnkuLuaにはこれらのインターフェースをダイアログで呼びます。
ダイアログは次の元素を提供します: TextView, EditText, CheckBox, RadioGroup , RadioButton.
TextView, EditText とCheckBox は基本的に横に並びます。
新しい列を始めようとすれば、 newRow() 函数を使ってくださいです。
RadioGroup に複数のRadioButtonがあって、中に1つのボタンだけ選べます。
次、これらの函数を説明しましょう
dialogInit()
dialogInit() 新しいダイアログのデザインを始めます。全ての新しいダイアログはこの函数で始まるべきです。
addTextView(String)
addTextView このダイアログボックスに文字列を入れます。
addEditText(String argument, String defaultValue)
addEditText ユーザーに文字列を入力させます。入力した文字列は新しい全域変数に指定します。
defaultValue この文字列のデフォルト値です。
addEditNumber(String argument, integer defaultValue)
addEditNumber ユーザーに数字を入力させる。入力した数字は新しい全域変数に指定します。
addCheckBox(String argument, String text, boolean defaultValue)
addCheckBox 文字列textを表示してるチェックボックスが作り出る。defaultValue はこのチェックボックスのデフォルトは選んだ(true)或いは選ばない(false)を指定します。
チェックボックスの選択結果は新しい全域変数に指定します。
newRow()
今の文字列を終わって、新しい列を始めります。
addRadioGroup(String argument, integer defaultIndex)
この函数は新しいラジオボタングループを作り出します。ここから、次のaddRadioGroupまで、中の全部addRadioButton 函数はこのラジオボタングループに入れられます。
選んだボタンは新しい全域変数に指定します。
addRadioButton(String text, integer index)
文字列textを表示してるラジオボタンが作り出ます。整数 indexはこのボタンが選んだ時の数字を代表します。
addSpinner(String argument, Table of String, String defaultValue)
addSpinner は選択表を作り出します。内容は文字列のテーブルです。
選んだボタンの文字列は新しい全域変数に指定します。
allTroops = {"barbarian", "archer", "giant", "goblin", "wallBreaker",
"balloon", "wizard", "healer", "dragon", "PEKKA" }
addSpinner("training1", allTroops, allTroops[1])
addSpinnerIndex(String argument, Table of String, String defaultValue)
addSpinnerIndex(String argument, Table of String, integer defaultValue)
addSpinnerと一緒、ただし戻り値は選んだ項目の番号(整数、1に始まります)
dialogShow(String title)
dialogShow はdialogInitから、今までの全部dialogに関わる元素を表示する。Dialog boxにタイトルtitleは表示します。
dialogShow(String title)
dialogShowと一緒、ただしdialog boxはほとんど画面全体です。
デフォルトとプレファレンス
上の話のように、結果を提供する函数はいずれもデフォルト値が付いています。もしこのdialogは初めて呼ばれたら、デフォルト値はイニシャル値になります。
戻り値のあるユーザーインターフェース函数に、AnkuLuaがプレファレンス仕組みを提供します。つまり、前回ユーザーの入力した或いは選択した数値をAnkuLuaが覚えて、今度同じdialogが使う時、この数値をイニシャル値にします。
範例
ソースコードダウンロード
ソースコード
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)
一回目呼びます
次のように変更と選択して
OKを選択してから
プレファレンスの効果を展示するために、再びplayをタップして、画面に前回と同じ結果が出ます。
プレファレンス設定(preference)
dialogは前回実行した結果を保存するけど、dialogを呼ばなければ、この数値は手に入れない、ある程度不便です。
他にdialogと関係ない数値も保存したければ、次の函数を使ってください。
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)))
[次のページ]: 上級の函数
[前のページ]: 基礎オブジェクトと函数
[ホーム]: AnkuLua紹介