登录记住密码

package com.example.yuekao.ui.activity;

import android.Manifest;
import android.animation.AnimatorSet;
import android.animation.ObjectAnimator;
import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Build;
import android.os.Bundle;
import android.support.v4.app.ActivityCompat;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.EditText;
import android.widget.ImageView;
import android.widget.Toast;

import com.bumptech.glide.Glide;
import com.example.yuekao.R;
import com.example.yuekao.data.LoginBean;
import com.example.yuekao.di.constract.LoginIContract;
import com.example.yuekao.di.presenter.LoginPresenter;
import com.google.gson.Gson;
import com.umeng.socialize.UMAuthListener;
import com.umeng.socialize.UMShareAPI;
import com.umeng.socialize.bean.SHARE_MEDIA;

import java.util.Map;

public class MainActivity extends AppCompatActivity implements LoginIContract.IView {

@butterknife.BindView(R.id.image_touxiang)
ImageView imageTouxiang;
@butterknife.BindView(R.id.edit_name)
EditText editName;
@butterknife.BindView(R.id.edit_pass)
EditText editPass;
@butterknife.BindView(R.id.check_jizhu)
CheckBox checkJizhu;
@butterknife.BindView(R.id.btn_deng)
Button btnDeng;
@butterknife.BindView(R.id.btn_zhu)
Button btnZhu;
@butterknife.BindView(R.id.btn_anim)
Button btnAnim;
@butterknife.BindView(R.id.qq)
Button qq;
LoginPresenter loginPresenter;

private SharedPreferences sp;
private String userName;
private String password;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    butterknife.ButterKnife.bind(this);
    loginPresenter = new LoginPresenter();
    loginPresenter.attachView(this);

    if(Build.VERSION.SDK_INT>=23){
        String[] mPermissionList = new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE,Manifest.permission.ACCESS_FINE_LOCATION,Manifest.permission.CALL_PHONE,Manifest.permission.READ_LOGS,Manifest.permission.READ_PHONE_STATE, Manifest.permission.READ_EXTERNAL_STORAGE,Manifest.permission.SET_DEBUG_APP,Manifest.permission.SYSTEM_ALERT_WINDOW,Manifest.permission.GET_ACCOUNTS,Manifest.permission.WRITE_APN_SETTINGS};
        ActivityCompat.requestPermissions(this,mPermissionList,123);
    }


    //sp实现记住密码
    sp = getSharedPreferences("login",MODE_PRIVATE);
    checkJizhu.setChecked(sp.getBoolean("记住",false));
    editName.setText(sp.getString("edit1",""));
    editPass.setText(sp.getString("edit2",""));

    Intent intent = getIntent();
    if(intent.getBooleanExtra("so",false)){
        String userName = intent.getStringExtra("userName");
        String password = intent.getStringExtra("password");
        editName.setText(userName);
        editPass.setText(password);
    }

}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    UMShareAPI.get(this).onActivityResult(requestCode, resultCode, data);
}

@butterknife.OnClick({R.id.check_jizhu, R.id.btn_deng, R.id.btn_zhu, R.id.qq,R.id.btn_anim})
public void onViewClicked(View view) {
    switch (view.getId()) {
        case R.id.check_jizhu:
            break;
        case R.id.btn_deng:
            userName = editName.getText().toString();
            password = editPass.getText().toString();
            loginPresenter.requestView(userName, password);

            SharedPreferences.Editor editor = sp.edit();
            if(checkJizhu.isChecked()){
                editor.putBoolean("记住",checkJizhu.isChecked());
                editor.putString("edit1",userName);
                editor.putString("edit2",password);
            }
            editor.commit();
            break;
        case R.id.btn_zhu:
            Toast.makeText(this, "注册功能暂未开启,请留意官网公告", Toast.LENGTH_SHORT).show();
            break;
        case R.id.qq:
            UMShareAPI umShareAPI = UMShareAPI.get(this);
            umShareAPI.getPlatformInfo(MainActivity.this, SHARE_MEDIA.QQ, authListener);
            break;
        case R.id.btn_anim:
            ObjectAnimator translationX = new ObjectAnimator().ofFloat(imageTouxiang,"translationX",0,200f);
            ObjectAnimator translationY = new ObjectAnimator().ofFloat(imageTouxiang,"translationY",0,0);

            AnimatorSet animatorSet = new AnimatorSet();  //组合动画
            animatorSet.playTogether(translationX,translationY); //设置动画
            animatorSet.setDuration(3000);  //设置动画时间
            animatorSet.start(); //启动
            ObjectAnimator ra = ObjectAnimator.ofFloat(imageTouxiang,"rotation", 0f, 360f);
            ra.setDuration(3000);
            ra.start();
            break;
    }
}


UMAuthListener authListener = new UMAuthListener() {
    /**
     * @desc 授权开始的回调
     * @param platform 平台名称
     */
    @Override
    public void onStart(SHARE_MEDIA platform) {

    }

    /**
     * @desc 授权成功的回调
     * @param platform 平台名称
     * @param action 行为序号,开发者用不上
     * @param data 用户资料返回
     */
    @Override
    public void onComplete(SHARE_MEDIA platform, int action, Map<String, String> data) {

        Toast.makeText(MainActivity.this, "成功了", Toast.LENGTH_LONG).show();
        startActivity(new Intent(MainActivity.this,ShowActivity.class));
        String s = data.get("iconurl");
        Glide.with(MainActivity.this).load(s).into(imageTouxiang);
    }

    /**
     * @desc 授权失败的回调
     * @param platform 平台名称
     * @param action 行为序号,开发者用不上
     * @param t 错误原因
     */
    @Override
    public void onError(SHARE_MEDIA platform, int action, Throwable t) {

        Toast.makeText(MainActivity.this, "失败:" + t.getMessage(),                                     Toast.LENGTH_LONG).show();
    }

    /**
     * @desc 授权取消的回调
     * @param platform 平台名称
     * @param action 行为序号,开发者用不上
     */
    @Override
    public void onCancel(SHARE_MEDIA platform, int action) {
        Toast.makeText(MainActivity.this, "取消了", Toast.LENGTH_LONG).show();
    }
};

@Override
protected void onDestroy() {
    super.onDestroy();
    loginPresenter.desachView(this);
}

@Override
public void showData(final String responseData) {
    runOnUiThread(new Runnable() {
        @Override
        public void run() {
            Gson gson = new Gson();
            LoginBean loginBean = gson.fromJson(responseData, LoginBean.class);
            String status = loginBean.getStatus();
            Toast.makeText(MainActivity.this, responseData, Toast.LENGTH_SHORT).show();
            if(status.equals("0000")){
                Toast.makeText(MainActivity.this, responseData, Toast.LENGTH_SHORT).show();
                startActivity(new Intent(MainActivity.this,ShowActivity.class));
            }
        }
    });
}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值