package com.electric.chargingpile.adapter; import android.content.DialogInterface; import androidx.appcompat.app.AlertDialog; import android.view.View; import android.view.ViewGroup; import android.widget.BaseAdapter; import android.widget.RelativeLayout; import android.widget.TextView; import com.electric.chargingpile.R; import com.electric.chargingpile.activity.SearchQuestionActivity; import com.electric.chargingpile.data.TextSearch; import java.util.ArrayList; /** * Created by demon on 2017/8/25. */ public class SearchDBAdapter extends BaseAdapter { private ArrayList datas; private SearchQuestionActivity context; public SearchDBAdapter(ArrayList datas, SearchQuestionActivity context) { setData(datas); this.context = context; } public void setData(ArrayList datas) { if (datas != null) { this.datas = datas; } else this.datas = new ArrayList(); } public void clear() { if (datas != null) { datas.clear(); this.notifyDataSetChanged(); } } public void changeData(ArrayList datas) { setData(datas); this.notifyDataSetChanged(); } @Override public int getCount() { return datas.size(); } @Override public Object getItem(int position) { return datas.get(position); } @Override public long getItemId(int position) { return position; } @Override public View getView(final int position, View convertView, ViewGroup parent) { final Holder holder; if (convertView == null) { holder = new Holder(); convertView = context.getLayoutInflater().inflate(R.layout.item_search_text, null); holder.tv_text = (TextView) convertView.findViewById(R.id.tv_text); holder.rl_layout = (RelativeLayout) convertView.findViewById(R.id.rl_layout); convertView.setTag(holder); } else { holder = (Holder) convertView.getTag(); } final TextSearch textSearch = datas.get(position); holder.tv_text.setText(textSearch.getText()); holder.rl_layout.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { SearchQuestionActivity.tag = 1; SearchQuestionActivity.et_search.setText(textSearch.getText()); SearchQuestionActivity.et_search.setSelection(textSearch.getText().length()); } }); holder.rl_layout.setOnLongClickListener(new View.OnLongClickListener() { @Override public boolean onLongClick(View v) { AlertDialog.Builder builder = new AlertDialog.Builder(context); builder.setTitle("提示"); builder.setMessage("是否删除该记录?"); builder.setCancelable(false); builder.setPositiveButton("删除", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { context.textSearchDao.delete(textSearch); context.refreshDBList(); } }); builder.setNegativeButton("取消", null); builder.create().show(); return false; } }); // holder.tv_title.setText(myQuestion.getTitle()); // holder.tv_mark.setText(myQuestion.getCare()+"关注"); // holder.tv_question.setText(myQuestion.getAnswer_nums()+"回答"); // holder.tv_time.setText(TimeUtil.getTimeFormatText(TimeUtil.stringToDate(myQuestion.getCtime()))); // holder.ll_layout.setOnClickListener(new View.OnClickListener() { // @Override // public void onClick(View v) { //// MyQSearchDao myQSearchDao = MainApplication.getInstances().getDaoSession().getMyQSearchDao(); //// myQSearchDao.insert(myQuestion); // Intent intent = new Intent(context, QuestionActivity.class); // intent.putExtra("q_id",myQuestion.getId()); // context.startActivity(intent); // } // }); return convertView; } class Holder { TextView tv_text; RelativeLayout rl_layout; } }