ここから本文です

AndroidStudioで複数のCheckBoxの値を取得するには こんにちは、私はJavaではじめ...

kam********さん

2019/4/321:23:41

AndroidStudioで複数のCheckBoxの値を取得するには
こんにちは、私はJavaではじめてのアプリ開発をしているものです。

CheckBoxでの値の取得なのですが
ーーーーーーー
AAA ☑
BBB □
CCC ☑
ーーーーーーー
このようなレイアウトでCheckBoxを並べており、チェックされた文字の値を配列として取得したいのですが
(上記の場合{”AAA”、”CCC”}を取得したい)
ちなみに現在は 、AAAがtrueなら”AAA”をString配列に追加falseなら何もしない、BBBがtrueなら・・・というような処理をしています。正直めんどくさい
この処理をもっとスマートにする方法がありましたら教えていただけないでしょうか。

それとAndroidのレイアウトの使い方マニュアルみたいなのはどこにあるんですか?

閲覧数:
12
回答数:
1
お礼:
50枚

違反報告

ベストアンサーに選ばれた回答

プロフィール画像

カテゴリマスター

とみおさん

2019/4/402:40:19

CheckBoxのViewを並べてるレイアウトを取ってきて、
getChildAt()メソッドで内包している各Viewを取得し、
チェックを確認して、Text部位をListに詰め込む
って手順でどうでしょうか?

レイアウトのViewIDを「R.id.layout」とすると
List<String> list = new ArrayList<>();
ViewGroup layout = findViewById(R.id.layout);
int count = layout.getChildCount();
for (int i = 0; i < count; i++) {
View v = layout.getChildAt(i);
if (v instanceof CheckBox) {
CheckBox box = (CheckBox) v;
if (box.isChecked()) list.add(box.getText().toString());
}
}


> Androidのレイアウトの使い方マニュアルみたいなのはどこにあるんですか?
まずは公式のチェック
https://developer.android.com/guide/topics/ui/declaring-layout?hl=J...
日本語だから、まだわかりやすい

質問した人からのコメント

2019/4/4 12:43:04

回答ありがとうございます。
頑張ってソースをコピペしていたのがこんなに短くまとまるなんて・・・

この質問につけられたタグ

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる