充电桩app代码

MyCollectActivity.java 8.3KB

    package com.electric.chargingpile.activity; import android.app.Activity; import android.content.Intent; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; import android.os.Bundle; import android.view.View; import android.widget.AdapterView; import android.widget.ImageView; import android.widget.LinearLayout; import android.widget.Toast; import androidx.recyclerview.widget.LinearLayoutManager; import androidx.recyclerview.widget.RecyclerView; import com.electric.chargingpile.R; import com.electric.chargingpile.adapter.MyCollectAdapter; import com.electric.chargingpile.application.MainApplication; import com.electric.chargingpile.data.CollectData; import com.electric.chargingpile.util.BarColorUtil; import com.electric.chargingpile.util.DatabaseHandler; import com.electric.chargingpile.util.SharedPreferencesHelper; import com.electric.chargingpile.view.AlertDialog; import com.umeng.analytics.MobclickAgent; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; public class MyCollectActivity extends Activity implements View.OnClickListener { private ImageView back; private RecyclerView collectListView; private CollectData collectData; private ImageView tv_share; private LinearLayout ll_collect; int currPos; SharedPreferencesHelper sharedPreferencesHelper; private ImageView no_data; private List<CollectData> mCollectDataList = new ArrayList<CollectData>(); private MyCollectAdapter myCollectAdapter; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_my_collect); BarColorUtil.initStatusBarColor(MyCollectActivity.this); initView(); } private void initView() { ll_collect = (LinearLayout) findViewById(R.id.ll_collect); tv_share = (ImageView) findViewById(R.id.tv_share); tv_share.setOnClickListener(this); back = (ImageView) findViewById(R.id.iv_back); back.setOnClickListener(this); no_data = findViewById(R.id.no_data); collectListView = findViewById(R.id.collect_listView); List<CollectData> list = getCollectList(); myCollectAdapter = new MyCollectAdapter(this, list); collectListView.setLayoutManager(new LinearLayoutManager(this)); collectListView.setAdapter(myCollectAdapter); myCollectAdapter.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { onCollectItemClick(position); } }); myCollectAdapter.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() { @Override public boolean onItemLongClick(AdapterView<?> parent, View view, int position, long id) { onCollectItemLongClick(position); return true; } }); } @Override public void onClick(View v) { switch (v.getId()) { case R.id.iv_back: finish(); break; case R.id.tv_share: Toast.makeText(this, "您可以长按来删除收藏条目", Toast.LENGTH_LONG).show(); break; } } public List<CollectData> getCollectList() { mCollectDataList.clear(); DatabaseHandler db = new DatabaseHandler(MyCollectActivity.this, ""); Cursor c = db.query(); if (c.getCount() <= 0) { no_data.setVisibility(View.VISIBLE); return mCollectDataList; } else { no_data.setVisibility(View.GONE); } List<CollectData> tmpList = new ArrayList<CollectData>(); while (c.moveToNext()) { collectData = new CollectData(); collectData.setZhan_id(c.getString(c.getColumnIndex("zhan_id"))); collectData.setZhan_name(c.getString(c.getColumnIndex("zhan_name"))); collectData.setZhan_address(c.getString(c.getColumnIndex("zhan_address"))); collectData.setFast_num(c.getString(c.getColumnIndex("fast_num"))); collectData.setSlow_num(c.getString(c.getColumnIndex("slow_num"))); tmpList.add(collectData); } String inStr = "("; for (CollectData data : tmpList) { inStr += data.getZhan_id() + ","; } inStr = inStr.substring(0, inStr.length() - 1); inStr += ")"; Map<String, String> map = new HashMap<String, String>(); String sql = "select id,status from zhan_list where status = 4 and id in " + inStr; String dbPath = "/data/user/0/com.electric.chargingpile/databases/zhan_list"; try { SQLiteDatabase sqLiteDatabase = SQLiteDatabase.openDatabase(dbPath, null, SQLiteDatabase.OPEN_READWRITE); Cursor cursor = sqLiteDatabase.rawQuery(sql, null); while (cursor.moveToNext()) { String id = cursor.getString(cursor.getColumnIndex("id")); String status = cursor.getString(cursor.getColumnIndex("status")); map.put(id, status); } cursor.close(); db.close(); } catch (Exception e) { e.printStackTrace(); } for (CollectData d : tmpList) { if (map.get(d.getZhan_id()) != null) { mCollectDataList.add(d); } } return mCollectDataList; } public void onCollectItemClick(int currPos) { this.currPos = currPos; Intent intent = new Intent(this, NewZhanDetailsActivity.class); intent.putExtra("zhan_id", mCollectDataList.get(currPos).getZhan_id()); startActivityForResult(intent, 3); MainApplication.details_flag = "2"; } public void onCollectItemLongClick(int currPos) { new AlertDialog(MyCollectActivity.this).builder().setTitle("删除该条收藏") .setMsg("删除后将无法在我的收藏中查看该站信息,请确认是否删除?") .setPositiveButton("删除记录", new View.OnClickListener() { @Override public void onClick(View v) { sharedPreferencesHelper = new SharedPreferencesHelper(MyCollectActivity.this); DatabaseHandler db = new DatabaseHandler(MyCollectActivity.this, ""); db.del(mCollectDataList.get(currPos).getZhan_id()); sharedPreferencesHelper.removeData(mCollectDataList.get(currPos).getZhan_name()); mCollectDataList.remove(currPos); Toast.makeText(MyCollectActivity.this, "删除记录成功", Toast.LENGTH_SHORT).show(); List<CollectData> list = getCollectList(); myCollectAdapter.setData(list); } }).setNegativeButton("取消", new View.OnClickListener() { @Override public void onClick(View v) { } }).show(); } @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { //先判断是哪个页面返回过来的 switch (requestCode) { case 3: //再判断返回过来的情况,是成功还是失败还是其它的什么…… switch (resultCode) { case 1: // 删除 sharedPreferencesHelper = new SharedPreferencesHelper(MyCollectActivity.this); sharedPreferencesHelper.removeData(mCollectDataList.get(currPos).getZhan_name()); mCollectDataList.remove(currPos); List<CollectData> list = getCollectList(); myCollectAdapter.setData(list); } break; } } @Override protected void onResume() { super.onResume(); MobclickAgent.onResume(this); } @Override protected void onPause() { super.onPause(); MobclickAgent.onPause(this); } }