Android登陆注册

Mydb.java//数据库

public class Mydb extends SQLiteOpenHelper {
    public Mydb(Context context, String name, SQLiteDatabase.CursorFactory factory, int version) {
        super(context, name, factory, version);

    }

    @Override
    public void onCreate(SQLiteDatabase db) {
        db.execSQL("create table if not exists userinfo(id integer PRIMARY KEY autoincrement,user text,password text)");
    }

    @Override
    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {

    }

MainActivity.java//登陆界面

package com.zuqiuyu.signup;

import android.app.ActivityManager;
import android.content.Context;
import android.content.Intent;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.support.v7.app.ActionBarActivity;
import android.view.KeyEvent;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.EditText;
import android.widget.Toast;

public class MainActivity extends ActionBarActivity {
    private EditText etUser,etPassword;
    SQLiteDatabase mDb;
    Mydb dao1;
    String user,password;
    float exittime;
    Cursor cursorUserId,cursorPasswordId,cursorPassword;
    int i1,i2,i3;
    String s1,s2;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        etUser = (EditText) findViewById(R.id.etUser);
        etPassword = (EditText) findViewById(R.id.etPassword);
        etUser.setText("");
        etPassword.setText("");
        dao1 = new Mydb(this,"userinfo.db",null,1);

        findViewById(R.id.btnSignUp).setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                finish();
                Intent intent = new Intent();
                intent.setClass(getApplicationContext(),SignUp.class);
                startActivity(intent);
            }
        });
        findViewById(R.id.btnLogIn).setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {

                if (check()) {
                    Intent intent = new Intent();
                    intent.setClass(getApplicationContext(), welcome.class);
                    Bundle bundle = new Bundle();
                    bundle.putString("user", user);
                    intent.putExtras(bundle);
                    intent.setClass(getApplicationContext(), welcome.class);
                    startActivity(intent);
                } else {
//                    Toast.makeText(getApplicationContext(),s1+"\t"+s2,Toast.LENGTH_SHORT).show();
             //       Toast.makeText(getApplicationContext(),String.valueOf(i1)+"\t"+String.valueOf(i2), Toast.LENGTH_SHORT).show();
                             Toast.makeText(getApplicationContext(), "账号名或密码错误!", Toast.LENGTH_SHORT).show();
                            etPassword.setText("");
                }
            }
        });
    }
    public boolean check() {
        user = etUser.getText().toString();
        password = etPassword.getText().toString();
        mDb = dao1.getReadableDatabase();
        if (!user.equals("") && !password.equals("")) {
        cursorUserId = mDb.query("userinfo", new String[]{"id"}, "user=?", new String[]{user}, null, null, null);
        cursorPasswordId = mDb.query("userinfo", new String[]{"id"}, "password=?", new String[]{password}, null, null, null);

        cursorUserId.moveToFirst();
        cursorPasswordId.moveToFirst();
        if (cursorUserId.getCount() != 0 && cursorPasswordId.getCount() != 0) {
            cursorUserId.moveToFirst();
            cursorPasswordId.moveToFirst();
            i1 = cursorUserId.getCount();
            i2 = cursorPasswordId.getCount();
            i3 = cursorUserId.getInt(0);
            cursorPassword = mDb.query("userinfo", new String[]{"password"},"id=?",new String[]{String.valueOf(i3)},null,null,null);
            cursorPassword.moveToFirst();
            if (cursorPassword.getString(0).equals(password)) {
                return true;
            }
        }

    }
        else
            Toast.makeText(getApplicationContext(),"账号名或密码错误",Toast.LENGTH_SHORT).show();
        cursorUserId.close();
        cursorPasswordId.close();
        mDb.close();
        return false;
    }
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.menu_main, menu);
        return true;
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // Handle action bar item clicks here. The action bar will
        // automatically handle clicks on the Home/Up button, so long
        // as you specify a parent activity in AndroidManifest.xml.
        int id = item.getItemId();

        //noinspection SimplifiableIfStatement
        if (id == R.id.action_settings) {
            return true;
        }

        return super.onOptionsItemSelected(item);
    }

    @Override
    public boolean onKeyDown(int keyCode, KeyEvent event) {

        if (keyCode == KeyEvent.KEYCODE_BACK){
            if (System.currentTimeMillis()-exittime>2000){
            Toast.makeText(getApplicationContext(),"再按一次退出程序",Toast.LENGTH_SHORT).show();
            exittime = System.currentTimeMillis();
        }
        else
            {
                finish();
                Intent intent = new Intent();
                intent.setAction(Intent.ACTION_MAIN);
                intent.addCategory(Intent.CATEGORY_HOME);
                startActivity(intent);

            }
            return true;
        }
        return super.onKeyDown(keyCode, event);
    }

}

signup.java//注册界面

package com.zuqiuyu.signup;

import android.content.ContentValues;
import android.content.Intent;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.support.v7.app.ActionBarActivity;
import android.view.View;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;

import javax.xml.transform.Templates;

public class SignUp extends ActionBarActivity {
    private EditText etUser,eTPassword,etIspassoord;
    String user,passowrd,ispassoword;
    SQLiteDatabase mDb;
    Mydb dao1;
    String index;
    Cursor cursor;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_sign_up);
        etUser = (EditText)findViewById(R.id.etUser);
        eTPassword = (EditText)findViewById(R.id.etPassword);
        etIspassoord = (EditText)findViewById(R.id.etIsPassword);
        dao1 = new Mydb(this,"userinfo.db",null,1);
        findViewById(R.id.btnCheck).setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                etUser = (EditText)findViewById(R.id.etUser);
                user = etUser.getText().toString();
                if (!user.equals("")){
                    if (isUser()){
                        Toast.makeText(getApplicationContext(),"恭喜,用户名"+user+"未被注册",Toast.LENGTH_SHORT).show();
                    }
                    else{
                        Toast.makeText(getApplicationContext(),"抱歉,用户名"+user+"已被注册,请重新输入用户名!",Toast.LENGTH_SHORT).show();
                        etUser.setText("");
                    }
                }
                else
                    Toast.makeText(getApplicationContext(),"用户名不准为空",Toast.LENGTH_SHORT).show();

            }
        });
        findViewById(R.id.btnSignUp).setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                user = etUser.getText().toString();
                passowrd = eTPassword.getText().toString();
                ispassoword = etIspassoord.getText().toString();
                ContentValues values = new ContentValues();
                mDb = dao1.getWritableDatabase();
                if (!user.equals("")&&!passowrd.equals("")&&!ispassoword.equals("")) {
                    if (isUser()) {
                        if (passowrd.equals(ispassoword)) {
                            values.put("user", user);
                            values.put("password", passowrd);
                            mDb.insert("userinfo", null, values);
                            Toast.makeText(getApplicationContext(), "恭喜" + user + ",注册成功", Toast.LENGTH_SHORT).show();
                            values.clear();
                            Intent intent = new Intent();
                            intent.setClass(getApplicationContext(), welcome.class);
                            Bundle bundle = new Bundle();
                            bundle.putString("user", user);
                            intent.putExtras(bundle);
                            finish();
                            startActivity(intent);
                        } else {
                            Toast.makeText(getApplicationContext(), "两次密码输入不一致!请重新输入", Toast.LENGTH_SHORT).show();
                            eTPassword.setText("");
                            etIspassoord.setText("");
                        }
                    } else {
                        Toast.makeText(getApplicationContext(), "抱歉,用户名" + user + "已被注册,请重新输入用户名!", Toast.LENGTH_SHORT).show();
                        eTPassword.setText("");
                        etIspassoord.setText("");
                        etUser.setText("");
                    }
                }
                else
                    Toast.makeText(getApplicationContext(),"输入值不准为空",Toast.LENGTH_SHORT).show();
                mDb.close();

            }
        });
    }
    public boolean isUser(){
        user = etUser.getText().toString();
        mDb = dao1.getReadableDatabase();
        cursor = mDb.query("userinfo", new String[]{"user"}, "user=?", new String[]{user}, null, null, null);

        if (cursor.getCount() == 0){
            cursor.close();
            return true;
        }
        else {
            cursor.close();
            return false;
        }

    }

    @Override
    public void onBackPressed() {
        cursor.close();
        finish();
        super.onBackPressed();
    }
}

welcome.java//欢迎界面

package com.zuqiuyu.signup;

import android.app.AlertDialog;
import android.content.DialogInterface;
import android.content.Intent;
import android.database.sqlite.SQLiteDatabase;
import android.graphics.Color;
import android.os.Bundle;
import android.support.v7.app.ActionBarActivity;
import android.view.View;
import android.widget.Button;
import android.widget.LinearLayout;
import android.widget.TextView;
import android.widget.Toast;

public class welcome extends ActionBarActivity {
    private TextView tvUser;
    private LinearLayout ll;
    SQLiteDatabase mDb;
    Mydb dao1;
    String user;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_welcome);
        tvUser = (TextView)findViewById(R.id.tvUser);
        Intent intent = getIntent();
        final Bundle bundle = intent.getExtras();
        user = bundle.getString("user");
        tvUser.setTextColor(Color.RED);
        tvUser.setText(user);
        findViewById(R.id.btnReturn).setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                finish();
                Intent intent = new Intent(getApplicationContext(), MainActivity.class);
                startActivity(intent);
            }
        });
        findViewById(R.id.btnUpdate).setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent = new Intent(getApplicationContext(), UpdatePassword.class);
                Bundle bundle1 = new Bundle();
                bundle1.putString("user",user);
                intent.putExtras(bundle);
                startActivity(intent);
            }
        });
        findViewById(R.id.btnDelete).setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                AlertDialog alertDialog = new AlertDialog.Builder(welcome.this).create();
                alertDialog.setTitle("友情提示!");
                alertDialog.setMessage("您确定要注销账号吗?注销后您的所有数据将会丢失!");
                alertDialog.setButton(DialogInterface.BUTTON_NEGATIVE, "我再想想", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {
                        Toast.makeText(getApplicationContext(), "明智之选", Toast.LENGTH_SHORT).show();
                    }
                });
                alertDialog.setButton(DialogInterface.BUTTON_POSITIVE, "去意已绝", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {
                        dao1 = new Mydb(getApplicationContext(),"userinfo.db",null,1);
                        mDb = dao1.getWritableDatabase();
                        mDb.delete("userinfo", "user=?", new String[]{user});
                        Toast.makeText(getApplicationContext(), "欢迎再来", Toast.LENGTH_SHORT).show();
                        ll = new LinearLayout(getApplicationContext());
                        ll = (LinearLayout) findViewById(R.id.ll);
                        ll.removeAllViews();
                        TextView tv = new TextView(getApplicationContext());
                        tv.setText("您好,尊敬的游客,请先注册或登录");
                        tv.setTextColor(Color.BLACK);
                        Button b1 = new Button(getApplicationContext());
                        b1.setText("注册");
                        b1.setOnClickListener(new View.OnClickListener() {
                            @Override
                            public void onClick(View v) {
                                Intent intent = new Intent(getApplicationContext(), SignUp.class);
                                startActivity(intent);
                            }
                        });
                        Button b2 = new Button(getApplicationContext());
                        b2.setText("登录");
                        b2.setOnClickListener(new View.OnClickListener() {
                            @Override
                            public void onClick(View v) {
                                Intent intent = new Intent(getApplicationContext(), MainActivity.class);
                                startActivity(intent);
                            }
                        });
                        ll.addView(tv);
                        ll.addView(b1);
                        ll.addView(b2);
                    }
                });

                alertDialog.show();
            }
        });
    }

    @Override
    public void onBackPressed() {
        finish();
        Intent intent = new Intent(getApplicationContext(), MainActivity.class);
        startActivity(intent);
        super.onBackPressed();
    }
}

updatepassword.java//修改密码界面

package com.zuqiuyu.signup;

import android.content.ContentValues;
import android.content.Intent;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.support.v7.app.ActionBarActivity;
import android.view.View;
import android.widget.EditText;
import android.widget.Toast;

public class UpdatePassword extends ActionBarActivity {
    private EditText etPassword,etNewpassword,etIsNewpassowrd;
    private String password,newpassword,IsNewpassowrd,user;
    SQLiteDatabase mDb;
    Mydb dao1;
    Cursor cursor,curorid,cursoruser;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_update_password);
        dao1 = new Mydb(this,"userinfo.db",null,1);
        etPassword = (EditText) findViewById(R.id.etPassword);
        etNewpassword = (EditText) findViewById(R.id.etNewPassword);
        etIsNewpassowrd = (EditText)findViewById(R.id.etIsNewPassword);
        Bundle bundle = getIntent().getExtras();
        user = bundle.getString("user");



        findViewById(R.id.btnUpdate).setOnClickListener(new View.OnClickListener() {
            ;

            @Override
            public void onClick(View v) {
                password = etPassword.getText().toString();
                newpassword = etNewpassword.getText().toString();
                IsNewpassowrd = etIsNewpassowrd.getText().toString();
                mDb = dao1.getReadableDatabase();
                //cursoruser = mDb.query("userinfo", new String[]{"user"}, "user=?", new String[]{user}, null, null, null);


                curorid = mDb.query("userinfo", new String[]{"id"}, "user=?", new String[]{user}, null, null, null);
                curorid.moveToFirst();
                int i3 = curorid.getInt(0);
               // cursorUserId = mDb.query("userinfo", new String[]{"id"}, "user=?", new String[]{user}, null, null, null);
//                i3 = cursorUserId.getInt(0);
//                cursorPassword = mDb.query("userinfo", new String[]{"password"},"id=?",new String[]{String.valueOf(i3)},null,null,null);

                cursor = mDb.query("userinfo", new String[]{"password"}, "id=?", new String[]{String.valueOf(i3)}, null, null, null);
                cursor.moveToFirst();
                String s1 = cursor.getString(0);
               // Toast.makeText(getApplicationContext(),s1,Toast.LENGTH_SHORT).show();
                if (cursor.getString(0).equals(password) ) {
                    if (newpassword.equals(IsNewpassowrd)) {
                        mDb = dao1.getWritableDatabase();
                        ContentValues values = new ContentValues();
                        values.put("password", newpassword);
                        mDb.update("userinfo", values, "id=?", new String[]{curorid.getString(0)});
                        Toast.makeText(getApplicationContext(), "修改成功!,请重新登录", Toast.LENGTH_SHORT).show();
                        cursor.close();
                        curorid.close();
                        Intent intent = new Intent();
                        intent.setClass(getApplicationContext(), MainActivity.class);
                        startActivity(intent);

                    } else
                        Toast.makeText(getApplicationContext(), "两次输入密码不一致", Toast.LENGTH_SHORT).show();
                } else {
                    Toast.makeText(getApplicationContext(), "原密码错误", Toast.LENGTH_SHORT).show();
                }

                cursor.close();
                curorid.close();

            }

        });

    }

    @Override
    public void onBackPressed() {
        cursor.close();
        curorid.close();
        super.onBackPressed();
    }
}
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值