目次
MIT App Inventor、Kodular、Niotronをある程度使ったことがある方向けに、普通に使っていても気づきにくかったり、公式のドキュメントに載っていなかったりする仕様をまとめます。
ブロックからコンポーネントの高さを自動や最大にする
コンポーネントの高さを設定するとき、デザイナー画面のプロパティからは「Automatic」と「Fill Parent」を選べますが、それらを呼び出すブロックは用意されていません。ブロックエディタから設定する場合は、「-1」「-2」を入力すると高さを最大または自動にできます。
ブロックから透過色を設定する
透明または半透明の色のブロックはありませんが、make colorブロックに4つ目のリスト要素を追加すると設定できます。0が透明、255が不透明です。
(Kodular) Card Viewの余白をなくす
KodularのCard Viewには、上下4px、左右8pxのMarginがあらかじめ設定してあります。カードを上下左右端までぴったり表示させたいときは、プロパティのElevationを0にしてから、DecorationコンポーネントのSet Marginブロックを使って、「-4,-8」にします。
- Set Marginには4つまで値を渡すことができ、
上, 左, 下, 右
の順で適用されます。 - 値を2つ渡すと、
上下, 左右
になり、1つでは4辺すべてが同じ余白になります。 - NiotronのCard ViewはプロパティからMarginを設定できます。
オフラインで実行する
インターネット接続が利用できない環境では、AI2Offlineが使えます。学校などネットワークの制限された場所でプログラミング教育に使う場合や、Googleアカウントを持っていない/登録したくない場合に活用できると思います。
Android11以降でIsAppInstalledが動作しないのを修正する
Android11(SDK30)以降のデバイスでは、ほかのアプリがインストールされているかを取得するのに権限が必要になったため、IsAppInstalledブロックが動作しなくなっています。拡張機能をインポートし、画面に追加すると取得できます。
Keystoreのパスワード
コンパイルしたアプリを編集してから再度署名したり、Android Studioで開発したアプリをアップデートとして公開したい場合などには、android.keystoreをエクスポートして利用できます。デフォルトのパスワードは以下のようになっています。
値 | |
---|---|
Keystore Password | android |
Keystore Alias | androidkey |
Key Password | android |
Twitterコンポーネントが動作しない
現在、標準のTwitterコンポーネントは動作しません。修正する方法もありません。放置されていて誰も直す気がないようです。GitHubにissueが立っています。何か動きがあればここにコメントされると思います。
改行を表示する
LabelやButtonの中で改行したいときは、1\n2\n3\n
のように \n
(バックスラッシュ⁺n)を入力します。
改行文字を直接表示する
\n
を含む文字列をTextに設定してしまうと、\n
自体を表示したくても改行になってしまいます。\
と n
を別のブロックに入力したものを、joinブロックを使って結合すれば \n
を表示することができます。
改行を含むJSONを扱うときにもこの手順が役立ちます。
他にも思い出したら追記します。