ボタンが押された回数を表示。ボタンにコードを書く



[ボタンイベント][Flash Lite2.0]

・空のダイナミックテキストを用意して,インスタンス名はcnt_text
・ボタンを用意して,インスタンス名はbtn
・もう一つボタンを用意して,インスタンス名はclr_btn


Layer1:フレーム1に以下を書く


var cnt:Number = 0;




インスタンス名 btn内に以下を書く


on(press, keyPress "5"){
trace("Press button");
cnt++;
cnt_text.text = cnt;
}



インスタンス名 clr_btn内に以下を書く


on(press, keyPress "0"){
cnt = 0;
cnt_text.text = cnt;
}




btnが押されるか,キーの”5”を押すと押された回数が増える。
clr_btnが押されるか,キーの”0”を押すと押された回数が0に戻る。

Androidのアプリは,複数のxmlファイルで設定し,.javaに反映



Androidでのアプリ開発は,

・画面のレイアウト等は main.xml でGUI or コード形式で記述する。
・レイアウトに使用した部品の設定は,strings.xmlでGUI or コード形式で記述する。

(adobeカタリストっぽいのか?)

pandyのプログラミングメモ

mail.xmlでは,各部品について
 android:text
 android:id
 android:layout_width
 android:layout_height

を決める。

これらの要素に対して,
 @+id/・・・ や @string/・・・ のように要素の値を入れる。

例えば,
strings.xml で,
< string name="button_label"> 押すのじゃ< /string> 

と書いていたら,

main.xmlで,
< Button android:text="@string/button_label"・・・

とすると,ボタン上の文字は,「押すのじゃ」が表示される。

main.out.xml というものがデバッグ中に作られることがある。
次にコンパイルするときに「文書が空です」というエラーがでるので,画面左のエクスプローラー上で,削除してしまう。

ボタンを押すたびに,時計が表示されたり,消えたりする



[ボタンイベント][Flash Lite2.0]

・空のダイナミックテキストを用意して,インスタンス名はtime_area
・ボタンを用意して,インスタンス名はbtn
・現在時刻を入れる,var now_date:Date
・表示状態保持用に,var Status_flag:Boolean;
・以下のソースをLayer1にアクションとして記述

以前のサンプルと違って,条件分岐にswitchとcaseを使った。
この方が見やすい。



var now_date:Date;
var Status_flag:Boolean;

Status_flag = true;

onEnterFrame = function() {
now_date = new Date();
time_area.text = now_date;
};

btn.onKeyDown = function() {
trace("KEYDOWN");

switch (Status_flag){
case true:
Status_flag = false;
trace( "Set false" );
break;
case false:
Status_flag = true;
trace( "Set true" );
break;
}

time_area._visible = Status_flag;
};

※しかし,これをLayerではなく,ボタンに記述すると「ステートメントは on ハンドラ内でなくてはいけません。」のコンパイルエラーが出ます。