package com.video.youth.ui;
|
|
import android.app.Activity;
|
import android.content.Intent;
|
import android.graphics.Color;
|
import android.os.Build;
|
import android.os.Bundle;
|
import android.view.View;
|
import android.view.View.OnClickListener;
|
import android.widget.Toast;
|
|
import com.androidquery.AQuery;
|
import com.video.youth.ui.subview.VerifyCodeViewShowLine;
|
import com.video.youth.util.YouthUtil;
|
import com.video.youth.R;
|
|
import java.lang.reflect.Field;
|
|
public class YouthPwdActivity extends Activity implements
|
OnClickListener {
|
|
//设置密码
|
public final static int TYPE_SET = 1;
|
//验证密码
|
public final static int TYPE_VERIFY = 2;
|
//修改密码-原密码
|
public final static int TYPE_UPDATE_OLD = 3;
|
//修改密码-新密码
|
public final static int TYPE_UPDATE_NEW = 4;
|
|
|
private AQuery mAquery;
|
|
private VerifyCodeViewShowLine vcvs;
|
|
|
private void initView() {
|
mAquery = new AQuery(this);
|
vcvs = (VerifyCodeViewShowLine) mAquery.id(R.id.vcvs_pwd).getView();
|
mAquery.id(R.id.tv_middle).text("青少年模式");
|
mAquery.id(R.id.tv_left).clicked(this);
|
mAquery.id(R.id.tv_btn).clicked(this);
|
mAquery.id(R.id.tv_pwd_forget).clicked(this);
|
mAquery.id(R.id.tv_pwd_update).clicked(this);
|
}
|
|
int type;
|
|
private void init() {
|
type = getIntent().getIntExtra("type", TYPE_SET);
|
switch (type) {
|
case TYPE_SET:
|
mAquery.id(R.id.tv_title).text("设置密码");
|
mAquery.id(R.id.tv_btn).text("确认设置");
|
break;
|
case TYPE_VERIFY:
|
mAquery.id(R.id.tv_title).text("输入密码");
|
mAquery.id(R.id.tv_btn).text("确定");
|
break;
|
case TYPE_UPDATE_OLD:
|
mAquery.id(R.id.tv_title).text("请输入原密码");
|
mAquery.id(R.id.tv_btn).text("下一步");
|
break;
|
case TYPE_UPDATE_NEW:
|
mAquery.id(R.id.tv_title).text("请输入新密码");
|
mAquery.id(R.id.tv_btn).text("确定");
|
break;
|
}
|
|
vcvs.setInputCompleteListener(new VerifyCodeViewShowLine.InputCompleteListener() {
|
@Override
|
public void inputComplete() {
|
mAquery.id(R.id.tv_btn).enabled(true);
|
}
|
|
@Override
|
public void invalidContent() {
|
mAquery.id(R.id.tv_btn).enabled(false);
|
}
|
});
|
}
|
|
@Override
|
protected void onCreate(Bundle savedInstanceState) {
|
super.onCreate(savedInstanceState);
|
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
|
try {
|
Class decorViewClazz = Class.forName("com.android.internal.policy.DecorView");
|
Field field = decorViewClazz.getDeclaredField("mSemiTransparentStatusBarColor");
|
field.setAccessible(true);
|
field.setInt(getWindow().getDecorView(), Color.TRANSPARENT); //改为透明
|
} catch (Exception e) {
|
}
|
}
|
setContentView(R.layout.activity_youth_password);
|
initView();
|
init();
|
}
|
|
@Override
|
public void onResume() {
|
super.onResume();
|
init();
|
}
|
|
|
@Override
|
protected void onDestroy() {
|
super.onDestroy();
|
}
|
|
|
//获取输入的密码
|
private String getInputPwd() {
|
return vcvs.getEditContent();
|
}
|
|
@Override
|
public void onClick(View v) {
|
int id = v.getId();
|
if (id == R.id.tv_left) {
|
finish();
|
} else if (id == R.id.tv_pwd_update) {
|
if (type != TYPE_VERIFY) {
|
return;
|
}
|
startActivity(new Intent(this, YouthPwdActivity.class).putExtra("type", TYPE_UPDATE_OLD));
|
} else if (id == R.id.tv_pwd_forget) {
|
startActivity(new Intent(this, BrowserActivity.class).putExtra("url", getString(R.string.forget_pwd)));
|
} else if (id == R.id.tv_btn) {
|
switch (type) {
|
case TYPE_SET: {
|
String pwd = getInputPwd();
|
YouthUtil.setPwd(getApplicationContext(), pwd);
|
Toast.makeText(this, "密码设置成功", Toast.LENGTH_SHORT).show();
|
YouthUtil.openYouthMode(getApplicationContext());
|
finish();
|
}
|
|
break;
|
case TYPE_VERIFY: {
|
String pwd = getInputPwd();
|
if (!YouthUtil.isPwdRight(getApplicationContext(), pwd)) {
|
Toast.makeText(this, "密码错误", Toast.LENGTH_SHORT).show();
|
return;
|
}
|
if (YouthUtil.isOpenYouthMode(getApplicationContext())) {
|
YouthUtil.closeYouthMode(getApplicationContext());
|
Toast.makeText(this, "青少年模式已关闭", Toast.LENGTH_SHORT).show();
|
} else {
|
YouthUtil.openYouthMode(getApplicationContext());
|
Toast.makeText(this, "青少年模式已开启", Toast.LENGTH_SHORT).show();
|
}
|
finish();
|
}
|
|
break;
|
case TYPE_UPDATE_OLD: {
|
String pwd = getInputPwd();
|
if (!YouthUtil.isPwdRight(getApplicationContext(), pwd)) {
|
Toast.makeText(this, "原密码错误", Toast.LENGTH_SHORT).show();
|
return;
|
}
|
startActivity(new Intent(this, YouthPwdActivity.class).putExtra("type", TYPE_UPDATE_NEW));
|
finish();
|
}
|
break;
|
case TYPE_UPDATE_NEW: {
|
String content = getInputPwd();
|
YouthUtil.setPwd(getApplicationContext(), content);
|
Toast.makeText(this, "密码修改成功", Toast.LENGTH_SHORT).show();
|
finish();
|
}
|
|
break;
|
}
|
}
|
|
}
|
|
|
}
|