JavaでAndroid Studioアプリ開発を試みるの第2回 「Layout」

さて、Androidアプリの開発メモの続きです。
勢いで行けるところまで行きたいと思います。

何しろ1か月でメモ帳アプリを完成させる。
ただし、その完成度は規定しない。
1か月で何となくできるところまで出来たらラッキーというもの。

つまり、1ヶ月と言う厳しめの期間で出来るところまでできたら成功と言うことにしてしまう企画。
とは言え、プログラミングを生業にしているわけではないので、結構つらいはずです。

 

アンドロイドアプリの最初の一歩は画面構成

さて、Android Studioでのアンドロイドアプリ開発。
まずは画面作りから始まります。

とりあえず、中身がすっからかんのEmpty Activityという画面の構成を選んでスタートします。
そうしてしばらく待っていると、なんか色々と自動でファイルが作られます

色々なフォルダ構成になっていて、res → layoutと言うフォルダのactivity_main.xmlというファイルが画面構成のファイル。
これをいじっていくと画面ができる訳です。

拡張子がxmlなので、java言語ではなくxmlの形式で書くことになる訳です。
javaだと色々な下準備が求められますが、xmlであれば必要な要素を書いていくだけで良いので、多少は楽です。

さらに、デザインタブだと、画面に表示されたパーツをGUIベースで配置もできる。
そうすると、プログラミングの知識がなくても作れちゃいそうです。
部品も一覧があって、そこから選ぶだけですし。

 

逆に難しいGUI操作のデザイン

という事で、画面を作るのですが、GUIベースだと結局、何をやっているのか分からなくて逆に難しい。。
ので、コードベースで作っていきます。
やってみると分かるのですが、GUIベースだと思ったように操作できなくて逆に難しかったりするのです。。

私の作ってみたサンプルの部品は、まずは3つだけです。
入力用の編集可能テキスト、表示用のテキスト、入力の決定用のボタンです。

この3つのパーツを好きな位置に並べます。
基本的にはあまり難しいところはなかったのですが、1つだけ

テキストの横幅が入力された文字によってサイズが変わってしまう。
入力用の編集可能テキストがそれだと、入力できない訳です。
これが困りもの。

で、やりたいことは左右いっぱいに広げる。
なのですが、編集可能テキストの右側に入力決定ボタンを置きたかった(そして、ボタンの残りの領域で編集可能テキストを最大サイズにしたかった)のです。。
これが、まぁ、ちょっと悩んだのですが。
結論から言って、下記を記載するだけです。

android:layout_width=“0dp”
android:layout_weight=“1”

 

残りの幅をすべて使う設定の説明

一応謎すぎるので解説しておきましょう。
layout_widthは幅を設定する記載です。
これが0dpという事なので、サイズはゼロと言う理解であってます。

とりあえず、残りの最大サイズにしたいという場合は、0に設定をしてみることになる訳です。
で、次がポイント。

layout_weightです。
これは、上記の幅0という設定と一緒に使います。
すると、残りの領域のどのくらいを使う?という設定ができるのです。

1の場合は100%という意味です。
0.5だと50%。
今回は、ボタンの幅を除いた残り100%のサイズにしたかったので、1しました。

なお、編集可能テキストの右側にボタンを配置すると言う位置関係の設定は必要です。
それをしないとボタンの存在を無視して、普通に画面いっぱいに広がってしまうからです。
っと、もう、既に長くなった。
これ、メモ帳アプリを作る作業以上に、このメモを残す作業が辛いかもしれない。。

まぁ、でもすぐ忘れちゃうから頑張ってメモは残そうと思います。

 

 

Android Studioを使用したアプリ開発を試みるの第1回
https://aoi345.com/memorandum/android-studio/

JavaでAndroid Studioアプリ開発を試みるの第1回 「アクセス修飾子」