no-image

【Android Studio】ボタンをまとめて操作するJavaのコード

Android StudioのボタンをJavaのコードでまとめて操作する方法

Android Studioで使われているプログラミング言語はJavaになります。今回はボタンをまとめて操作するにはどのようなコードをかけばよいのかについて書いていきます。

ボタンをまとめて操作するにはListとfor文を使う

今回は部分的にコードを書いていきますが、Android StudioはonCreate()メソッドがはじめから実装されていますが、変数の初期化はpublicなフィールドとして記述したほうが使いまわししやすいかと思います。ですが今回はあえてローカルな書き方で書いております。

ボタンを初期化するには色々書き方はあると思いますが、4つのボタン変数を宣言したコードです。

Button button1 = (Button) findViewById(R.id.button1);
Button button2 = (Button) findViewById(R.id.button2);
Button button3 = (Button) findViewById(R.id.button3);
Button button4 = (Button) findViewById(R.id.button4);

次にこれらのボタンをリストにします。JavaのListの書き方は少し特殊で、Listの初期化と値の設定を同時に行うには、Arrays.asList()という構文を使うようです。

List<Button> Blist = new ArrayList<Button>(Arrays.asList(button1, button2, button3, button4));
これで各ボタンが格納されたボタンリストのできあがりです。

for文を使ってボタンリストのボタンをひとつずつ取り出す

Javaにはforeach()とうものが存在せず for(型 変数 : List)というような書き方をします。この書き方をforeach文というようです。

for(Button b : BList){
b.setEnabled(false);
}
setEnabled(false);はボタンを操作不可にするメソッドです。これでボタンをまとめて操作することができました。Javaにはfor文のほかにForEach()メソッドというものがあるようなのですが、今回はそちらの説明は省略します。

注意点

今回のコードを抜粋して書いたものはローカルな書き方です。(アクセス修飾子をつけない書き方です)部品として使いまわすにはpublicやprivateをつけてフィールドとして扱う書き方にしたほうが良いかと思います。

for文のもうひとつの書き方

for文はよくある書き方でint型の変数を宣言してインクリメントするfor文の書き方ものせておきます。

for(int i = 0; i < 5; i++){
textView.setText(String.valueOf(i));
}