package com.quark.us; import java.io.File; import java.util.ArrayList; import java.util.List; import me.maxwin.view.XListView; import me.maxwin.view.XListView.IXListViewListener; import org.apache.http.NameValuePair; import org.apache.http.message.BasicNameValuePair; import org.json.JSONArray; import org.json.JSONObject; import android.content.Intent; import android.content.SharedPreferences; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.os.Bundle; import android.os.Environment; import android.os.Handler; import android.os.Message; import android.view.Gravity; import android.view.View; import android.view.View.OnClickListener; import android.widget.AdapterView; import android.widget.AdapterView.OnItemClickListener; import android.widget.LinearLayout; import android.widget.TextView; import android.widget.Toast; import com.carson.https.HttpsUtils; import com.qingmu.jianzhidaren.R; import com.quark.adapter.WalletLiushuiAdapter; import com.quark.common.JsonUtil; import com.quark.common.ToastUtil; import com.quark.common.Url; import com.quark.http.image.CircularImage; import com.quark.http.image.LoadImage; import com.quark.jianzhidaren.BaseActivity; import com.quark.model.BillRecordBean; import com.quark.utils.NetWorkCheck; public class MyWalletActivity extends BaseActivity implements IXListViewListener, OnClickListener { private CircularImage cover_user_photo;// 头像 private TextView nameTv, teleTv, yueTv, jiaoNaTv, tiXianTv; private SharedPreferences sp; private String user_id; private static XListView listView; private WalletLiushuiAdapter adapter; int pageNumber = 1; int currentCount = 1; int page_size = 5; private String url; ArrayList<BillRecordBean> liushuiList = new ArrayList<BillRecordBean>(); private int renzheng;// 是否已经实名认证 private String name;// 用户姓名 private String userMoney;// 当前余额 private String telephone;// 手机号码 @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_my_wallet); sp = getSharedPreferences("jrdr.setting", MODE_PRIVATE); url = Url.USER_LIST_BILL; user_id = sp.getString("userId", ""); // 从上个界面获取认证信息和姓名 renzheng = getIntent().getIntExtra("renzheng", 0); name = getIntent().getExtras().getString("name", ""); telephone = getIntent().getExtras().getString("telephone", ""); setBackButton(); initView(); init(); } private void initView() { cover_user_photo = (CircularImage) findViewById(R.id.my_wallet_cover_user_photo); nameTv = (TextView) findViewById(R.id.my_wallet_name_tv); nameTv.setText(name); teleTv = (TextView) findViewById(R.id.my_wallet_tel_tv); if (telephone != null && telephone.trim().length() >= 11) { teleTv.setText(telephone.subSequence(0, 3) + "****" + telephone.substring(7)); } yueTv = (TextView) findViewById(R.id.my_wallet_yue_tv); jiaoNaTv = (TextView) findViewById(R.id.my_wallet_jiaona_tv); tiXianTv = (TextView) findViewById(R.id.my_wallet_tixian_tv); jiaoNaTv.setOnClickListener(this); tiXianTv.setOnClickListener(this); } private void init() { loadNativePhotoFirst(); listView = (XListView) findViewById(R.id.liushui_list); listView.setPullLoadEnable(true); adapter = new WalletLiushuiAdapter(MyWalletActivity.this, liushuiList); listView.setAdapter(adapter); listView.setXListViewListener(this); listView.setOnItemClickListener(new OnItemClickListener() { @Override public void onItemClick(AdapterView<?> arg0, View arg1, int position, long arg3) { // 传递流水账单记录到账单详情界面 Intent intent = new Intent(MyWalletActivity.this, MyWalletBillRecordDetailActivity.class); if (liushuiList != null && liushuiList.size() > 0 && position > 0) { intent.putExtra("BillRecordBean", liushuiList.get(position - 1)); startActivity(intent); } } }); } /** * 初次进来先加载本地缓存头像 * */ private void loadNativePhotoFirst() { File mePhotoFold = new File(Environment.getExternalStorageDirectory() + "/" + "jzdr/" + "image"); if (!mePhotoFold.exists()) { mePhotoFold.mkdirs(); } File picture_1 = new File(Environment.getExternalStorageDirectory() + "/" + "jzdr/" + "image/" + sp.getString(user_id + "picture_1", "c")); if (picture_1.exists()) { // 加载本地图片 final Bitmap bb_bmp = BitmapFactory.decodeFile(Environment .getExternalStorageDirectory() + "/" + "jzdr/" + "image/" + sp.getString(user_id + "picture_1", "c")); if (bb_bmp != null) { cover_user_photo .setImageBitmap(LoadImage.toRoundBitmap(bb_bmp)); } } } /** * 设置返回按钮 */ public void setBackButton() { TextView titiTv = (TextView) findViewById(R.id.title); titiTv.setText("我的钱包"); LinearLayout back_lay = (LinearLayout) findViewById(R.id.left); back_lay.setVisibility(View.VISIBLE); back_lay.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { finish(); } }); } // ========================xlist================================================= private Handler handler = new Handler() { public void handleMessage(Message msg) { // listView.setLoadOver(currentCount, page_size);// 用于是否加载完了 // adapter.notifyDataSetChanged(); // onLoad(); switch (msg.what) { case 0: showWait(true); break; case 1: showWait(false); default: break; } }; }; private void onLoad() { listView.stopRefresh(); listView.stopLoadMore(); listView.setRefreshTime("刚刚"); } /** * 这个是手指放最上面下拉刷新数据 */ @Override public void onRefresh() { pageNumber = 1; liushuiList.clear(); getData(); } /** * 底部上滑动加载更多 */ @Override public void onLoadMore() { pageNumber++; getData(); } // ======xlist end============ @Override public void onClick(View view) { switch (view.getId()) { case R.id.my_wallet_jiaona_tv: Intent intent = new Intent(MyWalletActivity.this, LocalCarouselActivity.class); intent.putExtra("type", 3 + ""); startActivity(intent); break; case R.id.my_wallet_tixian_tv: if (renzheng == 2) { if (NetWorkCheck.isOpenNetwork(MyWalletActivity.this)) { Intent intent2 = new Intent(MyWalletActivity.this, MyWalletPreTixianActivity.class); intent2.putExtra("name", name); intent2.putExtra("userMoney", userMoney); startActivity(intent2); } else { Toast mToast = Toast.makeText(MyWalletActivity.this, "不能连接到网络", Toast.LENGTH_SHORT); mToast.setGravity(Gravity.CENTER, 0, 0); mToast.show(); } } else { ToastUtil.showLongToast(getResources().getString( R.string.wallet_no_realname)); } break; default: break; } } @Override protected void onResume() { super.onResume(); pageNumber = 1; liushuiList.clear(); getData(); } /** * 获取流水记录 */ private void getData() { new Thread() { public void run() { if (!"".equals(user_id)) { handler.sendEmptyMessage(0); try { List<NameValuePair> params = new ArrayList<NameValuePair>(); params.add(new BasicNameValuePair("user_id", user_id)); params.add(new BasicNameValuePair("pn", String .valueOf(pageNumber))); params.add(new BasicNameValuePair("page_size", String .valueOf(page_size))); String result = HttpsUtils.doHttpsPost(url, params);// 获取返回结果 JSONObject js = new JSONObject(result); JSONObject jss = js.getJSONObject("responseValues"); userMoney = jss.getString("user_money"); JSONObject jsss = jss.getJSONObject("billPage"); JSONArray jssss = jsss.getJSONArray("list"); if (jssss.length() > 0) { for (int i = 0; i < jssss.length(); i++) { BillRecordBean billRecordBean = new BillRecordBean(); billRecordBean = (BillRecordBean) JsonUtil .jsonToBean(jssss.getJSONObject(i), BillRecordBean.class); liushuiList.add(billRecordBean); } } currentCount = jssss.length(); runOnUiThread(new Runnable() { public void run() { adapter = new WalletLiushuiAdapter( MyWalletActivity.this, liushuiList); listView.setAdapter(adapter); yueTv.setText(userMoney); listView.setLoadOver(currentCount, page_size);// 用于是否加载完了 // adapter.notifyDataSetChanged(); onLoad(); showWait(false); } }); } catch (Exception e) { runOnUiThread(new Runnable() { public void run() { adapter = new WalletLiushuiAdapter( MyWalletActivity.this, liushuiList); listView.setAdapter(adapter); listView.setLoadOver(currentCount, page_size);// 用于是否加载完了 // adapter.notifyDataSetChanged(); onLoad(); showWait(false); } }); e.printStackTrace(); } } } }.start(); } }