カテゴリー:
日記アプリ
閲覧数:550 配信日:2014-01-11 07:38
検索メソッド
・RecordDaoItemクラスの検索メソッド「list_search_item」
//
// 検索
//
public List<RecordItem> list_search_item(RecordItem record, boolean searchWord ) { //第1引数。RecordItemクラスのインスタンスオブジェクト。第2引数。真偽値。日付で一覧を取得する場合はfalse
SQLiteDatabase db = helper.getReadableDatabase();
List<RecordItem> itemList;
String searchCulmn = null;
// 検索する条件を設定
String searchNikki = RecordItem.getItemSearchNikki();
String searchNen = RecordItem.getItemSearchNen();
String searchTuki = RecordItem.getItemSearchTuki();
String searchHi = RecordItem.getItemSearchHi();
if( searchWord == true ){
if( searchNikki.length() > 0 ){
searchCulmn = (RecordItem.COLUMN_ITEMNIKKI + " like '%" + searchNikki + "%' ").toString();
}
}
else{
if( searchHi == null ){
searchCulmn = RecordItem.COLUMN_ITEMNEN + " = '" + searchNen + "' AND " +
RecordItem.COLUMN_ITEMTUKI + " = '" + searchTuki + "' ";
}
else {
searchCulmn = RecordItem.COLUMN_ITEMNEN + " = '" + searchNen + "' AND " +
RecordItem.COLUMN_ITEMTUKI + " = '" + searchTuki + "' AND " +
RecordItem.COLUMN_ITEMHI + " = '" + searchHi + "' ";
}
}
// where句の条件を得たら検索
try {
String query = null;
query = "select * " +
" from " + RecordItem.TABLE_NAME_ITEM +
" where " + searchCulmn + ";";
Cursor cursor = db.rawQuery(query, null);
itemList = new ArrayList<RecordItem>();
0.パッケージ
必要パッケージを読み込む
・リストを使うには、ソースファイル最初の方に以下のimport文が必要
・完全限定名利用
import java.util.ArrayList;
import java.util.List;
1.リスト生成
・RecordDaoItemクラス内にある「検索をするlist_search_itemメソッド」の中で、クラス型オブジェクト(ユーザー定義クラスRecordItemのオブジェクト)を格納するリストitemListを生成
List<RecordItem> itemList;
itemList = new ArrayList<RecordItem>();
List<データ型> リストの名前 = new ArrayList<データ型>();
・リスト生成では、格納するデータ型とリストの名前を指定・サイズの指定は必須ではない
※List<データ型>の「List」は参照型(オブジェクト型)変数のインタフェース型(Listインターフェイス)を意味する
2.リストへデータを追加
2-1.リストの名前と追加するデータを指定
2-2.追加のたびに、データがリスト末尾に追加され、リストのサイズが1増える
リストの名前.add( データ );
・「検索をするlist_search_itemメソッド」の中で、リストitemListへデータを追加する
while( !cursor.isAfterLast()){
itemList.add( getItem( cursor ) );
cursor.moveToNext();
}