2011年10月26日水曜日

@Override

今回はAndroidアプリ開発Tipsというより、JavaのTipsです。


@Override

メソッドをオーバーライドする際、メソッドの前に@Overrideというアノテーションを記述すると、オーバーライドしているつもりでも実はできていない(=バグがある)場合にコンパイルエラーが発生します。これにより、メソッド名や引数のスペルミスや、型の間違いを未然に防ぐことができます。

@Overrideは、JDK 1.5とJDK 1.6では若干機能が異なります。JDK 1.5では抽象クラスの拡張には対応していますが、インターフェースの拡張には対応していません。JDK 1.6でインターフェースの拡張にも対応するようになりました。

Eclipseをインストールした状態ではJDK 1.5準拠の設定になっていますので、インターフェースを拡張する際に @Override を付けるとコンパイルエラーが発生します。

EditTextButtonToastCheckBoxRadioGroup & RadioButtonの各記事で、@Overrideをコメントにしていたのはそういう理由からです。

それではRadioButtonTest1bをベースに説明していきます。

2011年10月20日木曜日

RadioGroup & RadioButton

選択肢のなかからひとつだけ選ぶ場合、選択肢をすべて表示しておいてその中から選ぶ方法と、選択中のものだけ表示して、選択するときに選択肢をポップアップする方法があります。今回は選択肢をすべて表示してその中から選ぶRadioGroup/RadioButtonを紹介します。


RadioButtonを使う(失敗例)

本当はRadioButtonを使う場合は、RadioGroupを使ってグループ内でひとつだけ選択する、という書き方にしないといけませんが、ここでは試しにRadioGroupを使わないとどういう結果になるか試してみることにします。

2011年10月17日月曜日

CheckBox

状態のON/OFFを切り替えるにはCheckBoxを使います。例えば、ある機能を有効/無効にする、アイテムの中から複数選択する、といった場合の利用が考えられます。このブログでは「EditText」の記事で「パスワードを表示する/しない」の機能に使いました。


TextViewとCheckBox

まず最初にTextViewとCheckBoxを表示するだけのサンプルプログラムを作ってみます。

2011年10月13日木曜日

Toast

Androidアプリを使っていると、数秒間だけ表示するメッセージ通知を見かけます。これはToast (トースト)といいます。


Toastでメッセージを表示する

Toastはメッセージを表示すると、一定時間が経過すると、メッセージは自動的に消えます。表示するときはフェードイン、消える時はフェードアウトします。

表示する期間(時間)は2秒または4秒です。短いメッセージは2秒でも読めるかもしれませんが、長くなると2秒では読めないかもしれませんので、そういう場合は4秒表示するようにします。

使い方はいたって簡単です。
Toast.makeText(this, "message", Toast.LENGTH_SHORT).show();
これで2秒間、メッセージを表示します。4秒表示する場合は、makeText()の第3引数にToast.LENGTH_LONG を指定します。第1引数はコンテキスト、第2引数は表示する文字列を指定します。

サンプルプログラムは前回の「Button」をご覧ください。

2011年10月11日火曜日

Button

Buttonは、ボタンを押した時に何か処理を実行するために使います。

使い方は、ボタンがクリックされたときにイベントを受け付けるように、リスナーを設定します。
Button btn = (Button)findViewById(R.id.btn);
btn.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        // 実行する処理
    }
});
まずfindViewById()メソッドを使って、リソースIDからボタンのインスタンスを取得します。
次にそのボタンに対して、setOnClickListener()メソッドを使ってリスナーを設定し、onClick()メソッドを記述します。


ボタンクリックでメッセージを表示

2011年10月6日木曜日

EditText

テキストを入力するには、EditTextを使います。特定の文字しか入力できないようにしたり、複数行のテキストを入力することもできます。またパスワードを入力する場合は、基本的には伏せ字(*)で表示します。

Androidアプリには「パスワードを表示する」というオプションがあるものもたくさんあります。セキュリティ面から考えると問題があるのですが、誤入力を避けるために用意されているのでしょう。今回はそれに倣ってパスワードを表示したり非表示にするサンプルを用意しました。


テキストを入力する

2011年10月3日月曜日

ニューアストリア

昨日は日曜日でしたが、知り合いのエンジニアと会うために千里中央に出かけました。
少し時間があったので、以前から行きたいと思っていた「ニューアストリア」というお店で軽く食べることに。場所は北大阪急行の千里中央駅のホームの一つ上の階で、ホーム吹き抜けの両サイドの通りにたくさんのお店が並んでおり、その中のお店の一つです。