アプリ設定でチェックボックスを利用する

preference.xml内でtype="multi_select"のItemを指定すると複数項目を選択できるチェックボックスを利用できます。

preference.xml

preference.xmlは例えば以下のようになります。

Item下の子要素として表現される<option>は最大6個までです。 各optionを選択された時に返される値であるvalueは最大20文字までの半角英数で指定可能です。 valueに全角は利用できません。

<option></option>に挟まれたテキスト部分は最大で全角10文字です。


<?xml version="1.0" encoding="UTF-8"?>
<Preference>
  <Item name="Item1" type="multi_select" label="Item 1">
    <option value="1">value 1</option>
    <option value="aaa">value 2</option>
    <option value="bbb">value 3</option>
    <option value="4cc">value 4</option>
  </Item>
</Preference>

widget.js

アプリ設定での設定値を取得するにはgetStoredValueを利用します。 getStoredValueは、アプリ設定による設定が行われていない場合にnullを返します。

preference.xmlで利用可能な名前の制限から、現状ではgetStoredValueの引数として利用されるのは"Item1"、"Item2"、"Item3"のみになります。

multi_selectで設定された値は「,(カンマ)」区切りされた文字列として返されます。

以下のサンプルでは、フォーカスモードとアクティブモードに入る時に、Item1に設定された内容を表示しています。


function onLoad() {
}

function onUpKey() {
}

function onDownKey() {
}

function onRightKey() {
}

function onLeftKey() {
}

function onConfirmKey(type) {
}

function onFocus() {
  var item1 = getStoredValue("Item1");

  print("Item1 : " + item1);
}

function onUnfocus() {
}

function onActivate() {
  var item1 = getStoredValue("Item1");

  print("Item1 : " + item1);
}

関連

アプリ設定を有効にする

IPv6基礎検定

YouTubeチャンネルやってます!