Android Studio3で本書を実践(3)本書第5章から

前へ
最初から
前のページでややこしい設定をしましたので、第5章からはそれほど大きな違いはありません。重要なところをチェックしていきます。

ActivityがAppCompatActivityに(本書5-3など)

Android Studioで自動作成されるアクティビティのファイルは、クラス「Activity」ではなく「AppCompatActivity」のサブクラスになりました。古いクラスでも新しい仕様を使えるようにするためです。しかし、本書では複雑な仕様を使いませんので「Activity」でも「AppCompatActivity」でも、ひとつメソッド名を変更する以外は本書のコードと全く同じものを書けば動作します。

オプションメニューを表示させるコード(本書7章)

メソッド「onCreateOptionsMenu」の書き方

メソッド「onCreateOptionsMenu」は、クラス「(AppCompat)Activity」で引数や戻り値が決められているメソッドですが、コード補完を使えばか簡単に書けます。クラスの定義の中にいきなり「onCreateO」くらいまで打ってみてください、補完ウィンドウが現れます。
図1 いきなり打てば補完してくれる


メニューの外観は

本書リスト7-12の通りにメソッド「onCreateOptionsMenu」を完成させてください。再実行すると、「オプションメニュー」はアプリの上側に出出てきます。
図2 オプションメニューは上側に

新しいレイアウト・ファイルの作成(本書8-1)

プロジェクトにレイアウトファイルを追加

Android Studiodでも「new(新規)」メニューからレイアウトファイルを作成できます。このとき、プロジェクトツリーの 「app/res/layout」フォルダを狙って右クリックすると、「new」のサブメニューの一番上に「Layout resource file」が現れますから便利です。
図3 「layout」フォルダを狙って右クリックする


図4のようなウィンドウが現れます。「File name」を「input」にします。「Root element(ルート・エレメント)」が「ConstraintLayout」になっていますから、「LinearLayout」に書き換えます。補完を利用してください。これで本書図8-5と同じ設定になります。
図4 レイアウト・ファイルの設定。「ルート・エレメント」を書き換える


編集上のちょっとした違い

パレット上で「EditText」に相当するのは「Plain Text」です。これは「平文テキスト用のEditText」という意味です。
図5 これが一般的なEditText


また、ボタンを配置すると画面の幅いっぱいに現れるかもしれません。これはレイアウトプロパティlayout_widthの初期設定が「match_parent」になっているからです。「wrap_content」にすると適当な長さに縮まります。

strings.xmlの編集

「string.xml」は直接編集したほうが速いかもしれません。あくまでグラフィカルに設定しようと思うと以下のようになります。
(1)そこで、「コンポーネント・ツリー」で「LinearLayout」を選択しますが、右側にはほんの少しのプロパティしか現れないのではないでしょうか。プロパティ「text 」の編集欄の「...」をクリックします。
図6 TextViewのプロパティtextの編集欄


いろいろな「リソースを表す文字列」の一覧・設定ウィンドウが出てきます。ほとんどはシステムが使っている設定です。ここに我々の使う設定を追加するには、ウィンドウの右肩にある「Add new resource」というメニューを開き、ひとつしかない項目「New string Value(新しい文字列値)」を選びます。
図7 「新しい文字列値」を追加


図8 「name」と「value」を設定


「imput.xml」に相当するアクティビティ(本書9-1)

AppCompatActivityのサブクラス

Android Studioでも「new」メニューから新規Javaクラスを作成できます。
左側のプロジェクトツリーで「Java」というフォルダを開いて、「Main」と同じフォルダ(com.exampl.youname.firstappなどになっている)を右クリックします。
図9 新規クラスの作成


新規クラスの設定画面では、「Superclass」を「AppCompatActivity」にします。コード補完を利用してください。
図10 「App」と入力すると補完できる


「AndroidManifest.xml」を編集(本書p183)

 AndroidStudioでは、「AndroidManifest.xml」をグラフィカルに編集できません。本書リスト9-1になるように、ソースに直接書きこみます。しかし、コード補完にすぐれているので簡単です。
図11「manifests」フォルダを開いて「AndroidManifest.xml」を表示

図12 「a」と入力するとすでに「activity」が表示される


図13 そのまま、「.Input」までイモヅル式に補完して行ける


onMenuItemSelectedメソッドは名前変更(本書197p)

ひとつ重要な変更です。オプションメニューが選択されたときの動作を記述するメソッド「onMenuItemSelected」は、メソッド名がかわって「onOptionsItemSelected」になりました。引数もひとつ減りましたが、本書ではメニューアイテムがひとつしかないので、「どのアイテムが選ばれたか」は関係ありません。本書リスト9-19等は、ゆえに以下のように書けます。
@Override
public boolean   onOptionsItemSelected(MenuItem item) {
       
       //本書で示した内容をそのまま書く        

      return super.onOptionsItemSelected(item);
}

Quickfixも使える(本書9-6など)

「AndroidStudio」でもEclipseと同じように、「Quickfix」を用いてコードを効率的に編集できます。赤い波線が現れたところをマウスでダブルクリックしてください。
図14 「Quickfix」を使って、実装すべきメソッドを自動記入させる

アプリのアイコン変更(本書12-1など)

「asset(アセット)」として追加

最近のAndroidアプリのアイコンの扱いは複雑になりました。デバイスのスクリーンの解像度に合わせてさまざまな大きさの画像を用意しなければならないからです。手作業ではほぼ無理ですが、アプリのアイコンなら既存の画像を自動で置き換える形で、ウィザードより行えます。
「res」フォルダあたりを右クリックして「New」-「Image Asset」を選んで設定ウィンドウを出します。
図15 「Image Asset(イメージ・アセット)」


設定画面で現れるのは、現在使われているアイコンです。Androidのロゴです。解像度に合わせて複数の大きさが表示されています。緑色の部分は「透明」を示します。
図16 現在のアイコンが表示されている


「Path(パス)」の欄に、設定したい画像の今のパスを入力します。「...」をクリックすると直接ファイルを探せます。
図17では、「今あるファイルを上書きすることになります」という警告が出ますが、構いません。
図17 自分の画像で既存のアイコンを上書きするので警告が出るが気にしない


その後も赤字などで「上書きされます」と警告が出ますが、無視して進んで設定を終了します。 今実行中のアプリを一度閉じて、ホームスクリーンを表示してみましょう。アプリアイコンが独自のものに変わっているでしょう。
図18 ホームスクリーンのアイコンが変更された


いかがでしょうか。本書を最近入手された方は、このようにされますと実行できます。
前へ
最初から
本書サポートのトップへ
このサイトのトップへ