安卓-qq登录(初级)

来源:互联网 发布:福科汽车软件 编辑:程序博客网 时间:2024/04/29 23:43


ps:没有使用数据库

学会在xml界面 设置click方法(写自己希望的名字)。

设置步骤:在界面设置方法——》

public void login(View view) {    Toast.makeText(this,"login", Toast.LENGTH_SHORT).show();}

再利用这个方法 验证弹出吐司。


所写代码如下


public class MainActivity extends AppCompatActivity {


    private EditText et_qqnumber;
    private EditText et_passwd;
    private CheckBox cb_remember;


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);


        et_qqnumber = (EditText) findViewById(R.id.et_qqnumber);
        et_passwd = (EditText) findViewById(R.id.et_passwd);
        cb_remember = (CheckBox) findViewById(R.id.cb_remember);
        restoreInfo();
    }


    /**
     * 根据原来保存的文件信息,把QQ号码和密码信息显示到界面
     * getFilesDir 获取的是/data/data/包名/files/路径作为父目录
     */
    private void restoreInfo() {
        File file = new File(this.getFilesDir(), "info.txt");
        // 如果文件存在并且有内容就读取出来
        if (file.exists() && file.length() > 0) {
            try {
                FileInputStream fis = new FileInputStream(file);
                BufferedReader br = new BufferedReader(new InputStreamReader(fis));


                String info = br.readLine();
                String qq = info.split("##")[0];
                String pwd = info.split("##")[1];
                et_qqnumber.setText(qq);
                et_passwd.setText(pwd);


            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    }


    /**
     * 登录按钮的点击事件
     * 
     * @param view
     */
    public void login(View view) {
        String qq =  et_qqnumber.getText().toString().trim();
        String password =  et_passwd.getText().toString().trim();


        if (TextUtils.isEmpty(qq) || TextUtils.isEmpty(password)) {
            Toast.makeText(this,"用户名和密码不能为空", Toast.LENGTH_SHORT).show();
            return;
        } else {
            // 判断是否需要记录用户名和密码
            if (cb_remember.isChecked()) {
                // 被选中状态,需要记录用户名和密码
                try {
                    File file = new File(this.getFilesDir(), "info.txt");
                    FileOutputStream fos = new FileOutputStream(file);
                    String info = qq + "##" + password;
                    fos.write(info.getBytes());
                    fos.close();
                } catch (Exception e) {
                    e.printStackTrace();
                }
            }
            // 登录操作,模拟登录,数据应该提交给服务器比较是否正确
            if ("10000".equals(qq) && "123456".equals(password)) {
                Toast.makeText(this,"登录成功", Toast.LENGTH_SHORT).show();
            } else {
                Toast.makeText(this,"登录失败", Toast.LENGTH_SHORT).show();
            }
        }


    }
}
原创粉丝点击