Hatena::ブログ(Diary)

Oh! My! Enter! 〜バッチを起動しようと勢いよくキーを叩いたら、それはシフトキーだった〜 このページをアンテナに追加 RSSフィード

2011-05-05

複数選択可能なリストビューから、選択されている項目を取得する

複数選択可能なリストビューの作り方は色んなサイトで紹介されています。リストビューにsetChoiceMode(ListView.CHOICE_MODE_MULTIPLE)をセットしてやればOKです。難しいもんじゃあありません。

しかし、選択されている項目を取得する方法は一癖あります。なんせ、SparseBooleanArrayって名前がややこしい。何の配列か分かりづらい。要は、リストの各行が選択されているか(チェックが付いているか)のbooleanを配列にしたようなクラスみたいですね。

選択されている項目を取得するコードは、次の様な感じになります。

SparseBooleanArray checkedArray = listView.getCheckedItemPositions();
for (int i = 0; i < checkedArray.size(); i++) {
    int at = checkedArray.keyAt(i);
    if (checkedArray.get(at)) {
        Log.d("example", "選択されている項目:" + listView.getItemAtPosition(at).toString());
        Log.d("example", "そのキー" + at);
    }
}

まだまだAndroid開発の情報は少ないですね。これを調べるのにも結構時間がかかってしまいました。。。

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証

トラックバック - http://d.hatena.ne.jp/itmammoth/20110505/1304568153