根據Demo,修改一些後效果如下:
其中Demo中assets中下寫死着含有拼音和城市縮寫名的數據庫。
在實際項目中,我是先在剛下載好app後,從服務器中獲取含有拼音,城市縮寫名,及城市ID的數據,拆入本地數據庫AddressCitiesBeanEntity表,之後判斷本地該表是否有數據,不存在數據時,再去獲得。代碼如下:
try {
List<AddressCitiesBeanEntity> mAddressCitiesBeans = dbUtils.findAll(AddressCitiesBeanEntity.class);
if (mAddressCitiesBeans != null && mAddressCitiesBeans.size() > 0) {
}else{
// 獲取城市列表
getCities();
}
} catch (DbException e) {
e.printStackTrace();
}
之後的操作和Demo中的類似,其中最近訪問的城市未在Demo中體現,最近訪問就是寫個最近訪問城市的數據庫,當點擊過某城市的時候,存入;當然需要存入一個時間,並取出時去重。
地址選擇Demo地址:http://download.csdn.net/detail/u012881042/9549118