package com.geo.smallcredit.activity; import java.util.List; import android.app.Activity; import android.app.AlertDialog; import android.content.DialogInterface; import android.content.Intent; import android.graphics.Color; import android.os.Bundle; import android.os.Handler; import android.util.Log; import android.view.View; import android.view.View.OnClickListener; import android.view.Window; import android.widget.AbsListView.RecyclerListener; import android.widget.Button; import android.widget.TextView; import android.widget.Toast; import com.geo.smallcredit.R; import com.geo.smallcredit.util.LockPatternUtils; import com.geo.smallcredit.util.LockPatternView; import com.geo.smallcredit.util.LockPatternView.Cell; import com.geo.smallcredit.util.LockPatternView.DisplayMode; import com.geo.smallcredit.util.LockPatternView.OnPatternListener; import com.geo.smallcredit.util.ShareUtils; import com.geo.smallcredit.util.SharedPreferencesUtils; import com.geo.smallcredit.util.ToastUtil; public class PasswordActivity extends Activity{ // private OnPatternListener onPatternListener; private LockPatternView lockPatternView; private LockPatternUtils lockPatternUtils; private TextView titleTV,title_phone; private Button cliearBtn; private int inputNum = 4; private boolean isFristGestrue = true; //�Ƿ��ǵ�һ�λ������� static PasswordActivity instanse=null; public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.password_activity); instanse=this; FindViewById(); lockPatternView.setOnPatternListener(new OnPatternListener() { String currentPattern = ""; public void onPatternStart() {} @SuppressWarnings("static-access") public void onPatternDetected(List<Cell> pattern) { //�ж���û�������������� if (ShareUtils.getIsLock(PasswordActivity.this)) { Handler myHandler=new Handler(){// ����handler��Ϣ��ҳ��view��� public void handleMessage(android.os.Message msg) { switch (msg.what) { case PasswordActivity.RESULT_OK: lockPatternView.invalidate(); break; default: break; } }; }; int result = lockPatternUtils.checkPattern(pattern); if (result != 1 && result == 0) { if(inputNum == 0){ // Toast.makeText(PasswordActivity.this, "��������ѹ�������������", Toast.LENGTH_LONG).show(); new AlertDialog.Builder(PasswordActivity.this) .setTitle("��������ѹ�������������") .setPositiveButton("��������",new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface arg0, int arg1) { Intent i = getBaseContext().getPackageManager() .getLaunchIntentForPackage(getBaseContext().getPackageName()); i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); startActivity(i); } }).create().show(); return; } lockPatternView.setDisplayMode(DisplayMode.Wrong); titleTV.setText("�����������������������" + inputNum + "��"); inputNum -= 1; titleTV.setTextColor(Color.RED); lockPatternView.clearPattern(); } else if(result == 1){ // Toast.makeText(PasswordActivity.this, "��ӭ�������ǵĴ��ͥ", Toast.LENGTH_LONG).show(); lockPatternView.clearPattern(); if(SharedPreferencesUtils.getString(PasswordActivity.this,"userid", null)==null){ startActivity(new Intent(PasswordActivity.this, MainActivity.class)); } finish(); } } else { if (!isFristGestrue) { if(currentPattern.equals(lockPatternUtils.patternToString(pattern))){ Toast.makeText(PasswordActivity.this, "��������ɹ�", Toast.LENGTH_LONG).show(); lockPatternUtils.saveLockPattern(pattern); ShareUtils.setIsLock(PasswordActivity.this, true); lockPatternView.clearPattern(); // startActivity(new Intent(PasswordActivity.this,MainActivity.class)); finish(); }else{ if(inputNum == 0){ titleTV.setText("�������ð�ť���»���"); lockPatternView.clearFocus(); titleTV.setTextColor(Color.RED); cliearBtn.setVisibility(View.VISIBLE); return; } titleTV.setText("���λ��Ʋ�һ�����������Ի���" + inputNum + "��"); inputNum -= 1; titleTV.setTextColor(Color.RED); lockPatternView.clearPattern(); } } else { currentPattern = lockPatternUtils.patternToString(pattern); titleTV.setText("����һ�λ�����������"); titleTV.setTextColor(Color.WHITE); lockPatternView.clearPattern(); isFristGestrue = false; } } } public void onPatternCleared() { } @Override public void onPatternCellAdded(List<Cell> pattern) { } }); } private void FindViewById() { lockPatternUtils = new LockPatternUtils(this); lockPatternView = (LockPatternView) findViewById(R.id.lpv_lock); titleTV = (TextView) findViewById(R.id.password_title_text); cliearBtn = (Button) findViewById(R.id.button); title_phone=(TextView) findViewById(R.id.password_title_phone); cliearBtn.setVisibility(View.INVISIBLE); if(ShareUtils.getIsLock(PasswordActivity.this)){ titleTV.setText("��������������"); String mobileno=SharedPreferencesUtils.getString(PasswordActivity.this, "mobileno", null); if(mobileno!=null){ Log.i("mytag","�ֻ��ţ�==== "+mobileno); title_phone.setText(mobileno.substring(0, 3)+"********"); }else { ToastUtil.show(PasswordActivity.this,"����û�е�¼"); } }else{ titleTV.setText("�����������������"); } cliearBtn.setOnClickListener(new OnClickListener() { @Override public void onClick(View arg0) { // TODO Auto-generated method stub isFristGestrue = true; titleTV.setText("�����������������"); titleTV.setTextColor(Color.WHITE); lockPatternView.clearPattern(); inputNum = 4; } }); } }