スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
このエントリーをはてなブックマークに追加

[Android]ListViewの項目を選択不可にする

ただ触らせたくないならListViewのインスタンスにsetEnable(false)でよいかもしれないが、これではスクロールも行えない。
そこで、ArrayAdapterを継承したインナークラスを定義してから利用する事にします。
//HogeActivityクラス内で書いた場合
public class HogeActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.hoge_activity);
//カスタムArrayAdapter(タッチしてもハイライトしない)
CustomArrayAdapter adapter = new CustomArrayAdapter(this,R.layout.simple_list_item_1);
adapter.add("red");
adapter.add("green");
adapter.add("blue");
ResultListView.setAdapter(adapter);
}

//項目をタッチした時のハイライト表示をキャンセルするためのArrayAdapter継承クラス
private class CustomArrayAdapter extends ArrayAdapter<String> {
//今回はこのコンストラクタしかオーバーライドしていないが、
//本来は3つあるので3つともオーバーライドすると良い(詳しくはListViewの公式API参照)
public ResultListViewArrayAdapter(Context context,int textViewResId) {
super(context,textViewResId);
}

//以下2つをfalseで返すと選択が行えなくなる
public boolean areAllItemsEnabled() {
return false;
}
public boolean isEnabled(int position) {
return false;
}
}
}
このエントリーをはてなブックマークに追加

tag : Android ListView ArrayAdapter 選択不可

コメントの投稿

非公開コメント

Translation


上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。
プロフィール

チーズくん

Author:チーズくん
個人的メモをただ羅列しています。
twitter:@cheese1038

バロメーター
最新記事
最新コメント
最新トラックバック
月別アーカイブ
カテゴリ
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。