前回、switch statementの代わりにif statementを使用したが。switch statementを代替するものがMIT App Inventor2 にないかググっていたら、MIT App Inventor Helpに「Is there a switch case extension instead of numerous if/then/else?」という記事があり、webviwerブロックを使ってJavaScriptで判定させてはどうかとのアドバイスがあった。
以前にも電話番号をチェックするのにJavaScriptを使ったことがあるので早速やってみた。
アプリ実行のビデオ:
ビデオは内容的に前回のブログと全く同じですが。。。
スクリーン・デザイン:
JavaScriptを実行させて、リターン値を受け取るためWebViewerブロック(地球儀のアイコン)を追加した。
ブロック・コード:
JavaScriptとの連携部分のみ。
関数showResultsの代わりに関数fetchResults実行。
この変数はなくてもいいが、JavaScriptが返してくる値を格納。
関数fetchresults:WebViewのJavaScriptが受け取るWebViewStringに「ユーザーのピック+コンピューターのピック」をセットし、同梱のcheckRPSJavaScript.htmlを実行する。
上記実行の結果である返り値valueをresultLabelに表示する。
******************************************************************
「checkRPSJavaScript.html」の内容は以下の通り。このファイルはアプリに同梱。
******************************************************************
前回までのブログ:
MIT App Inventor 2で遊ぶ (じゃんけん特別編 2)
MIT App Inventor 2で遊ぶ (じゃんけん特別編 1)