確認ダイアログ

以下のサンプルでは、確認ダイアログを使っています。 アクティブモードに入って上矢印を押すと、「show image ?」という確認ダイアログが出現し、「はい」を選択した場合のみ画像が表示されます。 confirmの戻り値は、「はい」が選択されればtrue、「いいえ」であればfalseになります。

layout.xml


<?xml version="1.0" encoding="UTF-8"?>
<Widget>
  <Component name="widget">
    <Bitmap name="initial-bg"/>
    <Component name="normal">
      <Bitmap name="normalBase"/>
    </Component>
    <Component name="focus" visible="0">
      <Bitmap name="focusBase"/>
    </Component>
    <Component name="active" visible="0">
      <Bitmap name="activeBase"/>
      <Bitmap name="activeImg" visible="0" x="50" y="50"/>
    </Component>
  </Component>
</Widget>

widget.js


var nodeNormal     = getNode("normal");
var nodeNormalBase = getChildNode(nodeNormal, "normalBase");
var nodeFocus      = getNode("focus");
var nodeFocusBase  = getChildNode(nodeFocus, "focusBase");
var nodeActive     = getNode("active");
var nodeActiveBase = getChildNode(nodeActive, "activeBase");
var nodeActiveImg  = getChildNode(nodeActive, "activeImg");

var mode = 0; // 0:normal, 1:focus, 2:active

function onLoad() {
  loadImage(nodeNormalBase, "./parts/normal.png");
  loadImage(nodeFocusBase,  "./parts/focus.png");
}

function onUpKey() {
  if (mode == 2) {
    if (confirm("show image ?")) {
      loadImage(nodeActiveImg, "./parts/img.png");
      setVisible(nodeActiveImg, 1);
    }
  }
}

function onDownKey() {
}

function onRightKey() {
}

function onLeftKey() {
}

function onConfirmKey(type) {
}

function onFocus() {
  mode = 1;

  setVisible(nodeNormal, 0);
  setVisible(nodeFocus, 1);
  setVisible(nodeActive, 0);
}

function onUnfocus() {
  mode = 0;

  setVisible(nodeNormal, 1);
  setVisible(nodeFocus, 0);
  setVisible(nodeActive, 0);
}

function onActivate() {
  mode = 2;

  loadImage(nodeActiveBase, "./parts/active.png");

  setVisible(nodeActiveImg, 0);
  setVisible(nodeNormal, 0);
  setVisible(nodeFocus, 0);
  setVisible(nodeActive, 1);
}


サンプルダウンロード

ウィジェットバンドル : confirm.zip

IPv6基礎検定

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