litepal插入資料造成的資料重複,已經使用小結
阿新 • • 發佈:2018-12-14
專案賬戶管理這一塊需要搜尋,但是是賬戶列表沒有寫介面,所以,本地儲存,因為之前用的litepal儲存,所以為了專案的體積不變大,還是使用litepal查詢和儲存.新建表改litepal.xml這種我就不說了.
1..list儲存:
List<PaoTangList.DataBean> data = paoTangList.getData();
int size = paoTangList.getData().size();
list.clear();
DataSupport.deleteAll(AccountSearchEntity.class );
for (int i=0;i<size;i++){
// searchEntity.setAccountHistory(data.get(i).getUsername()+data.get(i).getNick_name());
// searchEntity.save();
list.add(new AccountSearchEntity(data.get(i).getUsername()+" - "+data.get(i).getNick_name()));
}
DataSupport.saveAll (list);
AccountSearchEntity為賬戶表實體類,注意的是我之前用的是注視掉的程式碼進行儲存,但是隻能存兩行資料,本應該是10行的,改成現在這樣即可.
2.textwater實時監聽,模糊搜尋設定recycleview介面卡
if (typeExtra == SEARCHTYPE_ACCOUNT){
initAccountSearchHoistory();
mEdittext.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
if (!TextUtils.isEmpty(s)){
List<AccountSearchEntity> accountSearchEntities =
DataSupport.where("accountHistory like ?", "%" + s + "%").find(AccountSearchEntity.class);
Log.d("lwp","accountsearchentity:"+accountSearchEntities.toString());
// List<AccountSearchEntity> all = DataSupport.findAll(AccountSearchEntity.class);
//必須得初始化
accountSearchRecycleViewAdapter = new AccountSearchRecycleViewAdapter(R.layout.item_account_search,accountSearchEntities);
mRvHistory.setLayoutManager(new LinearLayoutManager(SearchActivity.this));
accountSearchRecycleViewAdapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() {
@Override
public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
startActivity(new Intent(SearchActivity.this,
AccounttDetailActivity.class).
putExtra("peoplename",accountSearchRecycleViewAdapter.
getItem(position).getAccountHistory()));
}
});
mRvHistory.setAdapter(accountSearchRecycleViewAdapter);
}
else {
accountSearchRecycleViewAdapter.setNewData(null);
}
}
@Override
public void afterTextChanged(Editable s) {
}
});
ps:新版本的androidstudio沒找到ddms,資料庫的話直接可以找到介面有下角的DeviceFile Explorer找到data/data/對應包名,將資料庫匯出來檢視即可