コンピュータクワガタ

かっぱのかっぱによるコンピュータ関連のサイトです

AndroidからJavaを使い始めた人用のEclipseについて最低限知っておくと便利なこと

Androidがはやってきて、今までJavaEclipseを使用したことがない人が始めるというケースも多いかと思います。
そこで、最低限これくらい知っているとちょっとAndroid開発が楽になるよ、という機能を紹介します。
使いこなすとかなりいろいろできますが、本当に最低限これだけやっておくだけで違うよというものだけに絞っています。

今回は日本語化したEclipse 3.5.2で紹介します。上位のバージョンでも今回紹介する部分はほとんど変わっていません。

コード補完

IDEを使う以上、コード補完をしないと意味がありません。コード補完は、「Ctrl + スペースキー」です。なんでもいいのでちょっと入力して補完をするといろいろ出てくるのがわかるかと思います。

たとえば、Activityを継承したクラスで「f」と入力し「Ctrl + スペースキー」を押します。そうすると以下のようにfから始まる候補が表示されます。

出てきた候補から選択すると簡単にスペルミスをすることなく、必要なコードを挿入することができます。また、クラス自体を補完した場合にはimport文も自動的に挿入されます。たとえば、「Cale」と入力し「Ctrl + スペースキー」を押します。そうすると「Calendar」と挿入され、java.util.Calendarのimport文が挿入されます。
また、「find」と入力し「Ctrl + スペースキー」を押すと、候補が一意に定まるため「findViewById(id)」と一気に入力されます。

もうひとつの使い方は、クラスまたはインスタンス+「.」を入力した後に、「Ctrl + スペースキー」を押します。たとえば、「Calendar.」と入力し「Ctrl + スペースキー」を押します。そうすると、Calendarのstaticメソッドが補完候補として表示されます。もちろんインスタンスに対して行った場合には、インスタンスメソッドが表示されます。メソッド名が思い出せない場合や、こんなメソッドがあるはずだという場合に便利です。

コード補完は基本中の基本ですので、とにかく「Ctrl + スペースキー」を押していろいろやってみるといいかと思います。

importの編成

Eclipseを使用しているとimport文をて入力する必要はほぼありません。たとえば、Date date = new Date();と入力します。そうすると「Dateを型に解決できません」というエラーになります。エラーの原因はDateクラスがimportされていないためです。この状態で「Ctrl + Shift + o」キーを入力します。そうするとDate型のimportの候補が出てきます。

適切な候補を選ぶことで、import文が挿入されます。Date型の場合には候補が複数あったので選択画面が出てきましたが、候補が1つしかない場合にはショートカットキーを押すとすぐにimportの編成が完了します。たとえば、StringBuilder sb = null;と入力してから試すとわかります。

コードの整形

コードの整形にはAndroidの場合にはJavaの整形とXMLの整形の2種類が主にあるかと思います。整形自体は「Ctrl + Shift + f」でできます。
単純にJavaファイルやXMLファイルを開いてショートカットを押してみてください。整形されるのがわかるかと思います。

ここで、整形のされ方が気に入らないということがあります。整形のされ方もカスタマイズができます。Javaの整形ルールを設定するには、メニューバーの「ウィンドウ」から「設定」を選びます。「設定」画面で、「Java」→「コード・スタイル」→「フォーマッター」を選択します。「フォーマッター」画面で「新規」ボタンを押して気に入る設定をしてみてください。

設定画面では右画面にプレビューが出ているので設定をするとどうなるのかを確認しながら設定することができます。

XMLファイルも同様に整形できます。整形の設定は、「設定」画面の、「XML」→「XMLファイル」→「エディター」で設定できます。たとえば、「複数の属性をそれぞれ新規行に分割」にチェックをし、「スペースを使用したインデント」を選択し「インデント・サイズ」を2にします。

そうして、レイアウトのxmlファイルを整形すると以下のようになります。

XMLJavaと違い多くの設定はできませんが、上記の設定を切り替えるだけでかなり違うかと思います。この辺りも自分にあった整形ルールを設定するといいと思います。

importの編成やコードの整形を自動で行う

importの編成やコードの整形は便利ですが、ほとんどの場合コードを修正したら毎回実行したいものです。そのため、コードの保管時に自動的にこれらの操作を行う機能があります。

「設定」画面より、「Java」→「エディター」→「保管アクション」を選択します。ここで、「保管時に選択したアクションを実行」にチェックし、「ソース・コードのフォーマット」、「インポートの編成」にチェックをします。

そうすることでJavaソースコードの保管時に、フォーマットとimportの編成を自動で行ってくれます。残念ながらXMLファイルのフォーマットは自動では行ってくれませんので、手動でやってください。

一気にコメントにしたい

コードを書いてテストをしているときに多いと思うのですが、特定の部分をコメントにして違うコードを試すということがあるかと思います。そういった場合に、「/* 〜 */」で囲んでもいいのですが途中にコメントが入っていると、コメントがネストしてしまい思った通りにならない場合があります。

そういった場合には、コメントしたい部分を選択(反転)し、「Ctrl + /」を押します。そうすると行頭に「//」と行コメントが挿入されます。

逆にコメントを外す場合も、コメントを外したい部分を選択(反転)し、「Ctrl + /」を押します。そうすると「//」コメントがすべて除去されます。

これで気軽にコメント/非コメントすることができます。

オーバーライドするメソッドを楽に定義したい

Androidは、Activityや各種リスナー等を継承もしくは実装してクラスを作成することが多いです。
その際に、オーバーライドできるメソッドは何があったか、またインタフェースを実装する場合には実装すべきメソッドがなにかというのを調べて書いていくというのは非常に面倒です。そこで、メニューバーより「ソース」→「メソッドをオーバーライド/実装」を選択します。そうするとたとえばActivityの場合には以下のような画面が表示され、オーバーライドするメソッドを選択できます。

インタフェースの場合にはメソッドは実装しないといけないため、違ったアプローチで実装すべきメソッドを表示できます。たとえば、View.OnClickListenerを実装する場合を例にします。無名クラスで実装する場合を想定し、以下のようにコードを記述します。

View.OnClickListener ocl = new View.OnClickListener() {
};

そうすると、実装すべきメソッドを実装していないためエラーが出ています。そのエラー部分(赤い×マーク)をクリックします。

そうすると図のように「実装されていないメソッドの追加」という項目が出てきますのでクリックして選択すると、文字通り実装されていないメソッドが追加されます。

まとめ

非常に簡単に機能を説明しましたが、これらの機能だけでも開発効率が格段に変わるかと思います。
たくさんの機能を紹介してもいいのですが、最初からたくさんは使いこなすのは難しいため最小限にしています。
Eclipseの便利な機能を紹介しているサイトや本はたくさんありますので、今回紹介した機能がある程度使えるようになったらそれらを参照することをお勧めします。