package com.quark.jianzhidaren; import java.util.HashMap; import java.util.Map; import org.json.JSONException; import org.json.JSONObject; import android.content.DialogInterface; import android.content.Intent; import android.content.SharedPreferences; import android.content.SharedPreferences.Editor; import android.os.Bundle; import android.text.InputType; import android.view.MotionEvent; import android.view.View; import android.view.View.OnClickListener; import android.view.View.OnTouchListener; import android.view.Window; import android.view.inputmethod.InputMethodManager; import android.widget.Button; import android.widget.CheckBox; import android.widget.CompoundButton; import android.widget.CompoundButton.OnCheckedChangeListener; import android.widget.EditText; import android.widget.LinearLayout; import android.widget.RelativeLayout; import android.widget.TextView; import com.android.volley.AuthFailureError; import com.android.volley.DefaultRetryPolicy; import com.android.volley.Request; import com.android.volley.Response; import com.android.volley.VolleyError; import com.android.volley.toolbox.StringRequest; import com.carson.constant.ConstantForSaveList; import com.carson.constant.JiaoyanUtil; import com.lidroid.xutils.ViewUtils; import com.lidroid.xutils.view.annotation.ViewInject; import com.lidroid.xutils.view.annotation.event.OnClick; import com.parttime.login.FindPJLoginActivity; import com.parttime.main.MainTabActivity; import com.qingmu.jianzhidaren.R; import com.quark.common.Url; import com.quark.ui.widget.CustomDialog; /** * 修改密码密码 接口 参数不同 所以跟 忘记密码分开 * * @author Administrator * */ public class ModifyPwdActivity extends BaseActivity { private LinearLayout imageBtn; @ViewInject(R.id.password) private EditText password; @ViewInject(R.id.againpassword) private EditText againpassword; @ViewInject(R.id.show_pwd_checkbox) private CheckBox show_pwd_checkbox; @ViewInject(R.id.regin) private Button regin; @ViewInject(R.id.title) private TextView title; String passwordStr; String againpasswordStr; String user_id; String url; private SharedPreferences sp; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.modify_password); ViewUtils.inject(this); title.setText("修改密码"); // 键盘隐藏 LinearLayout activity_main = (LinearLayout) findViewById(R.id.forget_main); activity_main.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent event) { InputMethodManager imm = (InputMethodManager) getSystemService(INPUT_METHOD_SERVICE); return imm.hideSoftInputFromWindow(getCurrentFocus() .getWindowToken(), 0); } }); sp = getSharedPreferences("jrdr.setting", MODE_PRIVATE); user_id = sp.getString("userId", ""); url = Url.COMPANY_EDITPASSWORD + "?token=" + MainTabActivity.token; RelativeLayout topLayout = (RelativeLayout) findViewById(R.id.top_title_layout); topLayout.setBackgroundColor(getResources().getColor( R.color.guanli_common_color)); // 返回 imageBtn = (LinearLayout) findViewById(R.id.back); imageBtn.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { ModifyPwdActivity.this.finish(); } }); show_pwd_checkbox .setOnCheckedChangeListener(new OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton arg0, boolean arg1) { if (arg1) { password.setInputType(InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD); againpassword .setInputType(InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD); } else { password.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_PASSWORD); againpassword .setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_PASSWORD); } } }); } // 点击修改密码 public void showAlertDialog(String str, final String str2) { CustomDialog.Builder builder = new CustomDialog.Builder(this); builder.setMessage(str); builder.setTitle(str2); builder.setPositiveButton("确 定", new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int which) { dialog.dismiss(); if (str2.equals("修改成功")) { Intent intent = new Intent(); intent.setClass(getApplicationContext(), FindPJLoginActivity.class); startActivity(intent); } } }); builder.create().show(); } @OnClick(R.id.regin) public void reginOnclick(View v) { passwordStr = password.getText().toString().trim(); againpasswordStr = againpassword.getText().toString().trim(); if (check()) { showWait(true); regin.setClickable(false); StringRequest request = new StringRequest(Request.Method.POST, url, new Response.Listener<String>() { @Override public void onResponse(String response) { showWait(false); int status = 9999999; try { JSONObject js; js = new JSONObject(response); JSONObject sd = js .getJSONObject("ResponseStatus"); status = sd.getInt("status"); String msg = sd.getString("msg"); if (status == 2) { showToast(msg); Editor edit = sp.edit(); edit.putString("remember_pwd", againpasswordStr); edit.commit(); finish(); } else { regin.setClickable(true); showToast(msg); } } catch (JSONException e) { e.printStackTrace(); regin.setClickable(true); showToast("修改异常,请重试 "); } } }, new Response.ErrorListener() { @Override public void onErrorResponse(VolleyError volleyError) { showWait(false); regin.setClickable(true); showToast("你的网络不够给力,再试一次吧!"); } }) { @Override protected Map<String, String> getParams() throws AuthFailureError { Map<String, String> map = new HashMap<String, String>(); map.put("old_password", JiaoyanUtil.MD5(passwordStr)); map.put("password", JiaoyanUtil.MD5(againpasswordStr)); map.put("user_id", user_id); return map; } }; queue.add(request); request.setRetryPolicy(new DefaultRetryPolicy( ConstantForSaveList.DEFAULTRETRYTIME * 1000, 1, 1.0f)); } } public boolean check() { passwordStr = password.getText().toString(); againpasswordStr = againpassword.getText().toString(); if (passwordStr.trim().length() < 6 || againpasswordStr.trim().length() < 6) { showToast("密码不能少于6个字符"); return false; } return true; } @Override protected void onStop() { super.onStop(); queue.cancelAll(TAG); } }