大二下学期每日总结之第一次个人作业(第一阶段)

今日大部分时间都在完成第一次个人作业:

实现了登录并判断用户名手机号是否正确,

注册:注册用户名,姓名,班级手机号码。

利用SharedPreferences实现了记住手机号与用户名,可以直接登录。

利用数据回传实现了注册完成后自动填写刚申请的用户名与手机号。

下面为学生的数据库操作类:

public class StuDao {
    private Context context;
    private StudentDate stuDate;
    private StuDBHelper studbh;
    private SQLiteDatabase sqldb;
    private List<StudentDate> listStudentDate=new ArrayList<>();
    private StudentDate studate;
    public StuDao(Context context,StudentDate stuDate) {
        this.context=context;
        this.stuDate=stuDate;
        studbh=new StuDBHelper(context,"astudb.db",1);
        sqldb=studbh.getReadableDatabase();
    }
    public StuDao(Context context){
        this.context=context;
        studbh=new StuDBHelper(context,"astudb.db",1);
        sqldb=studbh.getReadableDatabase();
    }
    public long insertDB()
    {
        ContentValues contentvalues=new ContentValues();
        contentvalues.put("stuid",stuDate.getStuID());
        contentvalues.put("stuname",stuDate.getStuName());
        contentvalues.put("stuphone",stuDate.getStuPhone());
        contentvalues.put("stuclass",stuDate.getStuClass());
        long flag=sqldb.insert("studate",null,contentvalues);
        return flag;
    }
    public List<StudentDate> queryData(String querystr,String str)
    {
        String [] strs={str};
        Cursor cursor=sqldb.rawQuery("select * from studate where "+querystr+" like ?",strs);
        if(cursor.moveToFirst())
        {
            do{
                String stuName=cursor.getString(cursor.getColumnIndex("stuname"));
                String stuId=cursor.getString(cursor.getColumnIndex("stuid"));
                String stuClass=cursor.getString(cursor.getColumnIndex("stuclass"));
                String stuPhone=cursor.getString(cursor.getColumnIndex("stuphone"));
                System.out.println(stuName+stuId+stuClass+stuPhone);
                studate=new StudentDate(stuClass,stuId,stuName,stuPhone);
                listStudentDate.add(studate);
            }while(cursor.moveToNext());
        }
        return listStudentDate;
    }
    public void deleteDate(String deletestr,String str)
    {
        String [] strs={str};
        int flag=sqldb.delete("studate",deletestr+"=?",strs);
        System.out.println("FLAG"+flag);
    }
}
public class StuDBHelper extends SQLiteOpenHelper {
    private Context context;
    public StuDBHelper(Context context, String name, int version) {
        super(context, name, null, version);
        this.context=context;
    }
    @Override
    public void onCreate(SQLiteDatabase db) {
        String sql="create table studate(" +
                "id integer primary key autoincrement, " +
                "stuid varchar, " +
                "stuname varchar, " +
                "stuphone varchar, " +
                "stuclass varchar)";
        db.execSQL(sql);
    }

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

    }
}

下面为登录Activity与注册Activity

public class SignInActivity extends AppCompatActivity {
    private EditText text_sign_stuid;
    private EditText text_sign_stuphone;
    private StuDao studao;
    private List<StudentDate> listStuDate=new ArrayList<>();
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_sign_in);
        text_sign_stuphone=(EditText)findViewById(R.id.sign_stuphone);
        text_sign_stuid=(EditText)findViewById(R.id.sign_stuid);
        SharedPreferences sp=getSharedPreferences("datesave",MODE_PRIVATE);
        text_sign_stuid.setText(sp.getString("stuid",""));
        text_sign_stuphone.setText(sp.getString("stuphone",""));
    }

    @Override
    protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        text_sign_stuid=(EditText)findViewById(R.id.sign_stuid);
        text_sign_stuphone=(EditText)findViewById(R.id.sign_stuphone);
        if(data!=null){
            text_sign_stuid.setText(data.getStringExtra("stuid"));
            text_sign_stuphone.setText(data.getStringExtra("stuphone"));
            SharedPreferences.Editor editor=getSharedPreferences("datesave",MODE_PRIVATE).edit();
            editor.putString("stuid",text_sign_stuid.getText().toString());
            editor.putString("stuphone",text_sign_stuphone.getText().toString());
            editor.commit();
        }
    }
    public void onClickSign_sign(View view){
        text_sign_stuid=(EditText)findViewById(R.id.sign_stuid);
        text_sign_stuphone=(EditText)findViewById(R.id.sign_stuphone);
        studao=new StuDao(this);
        listStuDate=studao.queryData("stuid","%"+text_sign_stuid.getText().toString()+"%");
        System.out.println(listStuDate.size());
        if(listStuDate.size()!=0) {
            if(text_sign_stuphone.getText().toString().equals(listStuDate.get(0).getStuPhone())){
                SharedPreferences.Editor editor=getSharedPreferences("datesave",MODE_PRIVATE).edit();
                editor.putString("stuid",text_sign_stuid.getText().toString());
                editor.putString("stuphone",text_sign_stuphone.getText().toString());
                editor.commit();
                Intent intent=new Intent();
                intent.setClass(SignInActivity.this,MainActivity.class);
                intent.putExtra("stuid",text_sign_stuid.getText().toString());
                intent.putExtra("stuphone",text_sign_stuphone.getText().toString());
                startActivity(intent);
            }else{
                listStuDate.clear();
            }
        }
        if(listStuDate.size()==0){
            AlertDialog.Builder builder=new AlertDialog.Builder(this);
            builder.setTitle("提示").setIcon(R.mipmap.ic_launcher).setMessage("用户名或手机号错误");
            builder.setPositiveButton("OK", new DialogInterface.OnClickListener() {
                @Override
                public void onClick(DialogInterface dialog, int which) {

                }
            });
            AlertDialog ad=builder.create();
            ad.show();
        }
    }
    public void onClickSign_reg(View view){
        Intent intent=new Intent();
        intent.setClass(SignInActivity.this,RegActivity.class);
        startActivityForResult(intent,1);
    }
}
public class RegActivity extends AppCompatActivity {
    private EditText text_reg_stuid;
    private EditText text_reg_stuname;
    private EditText text_reg_stuphone;
    private EditText text_reg_stuclass;
    private StuDao studao;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_reg);
    }
    public void onClickReg_reg(View view){
        text_reg_stuid=(EditText)findViewById(R.id.reg_stuid);
        text_reg_stuclass=(EditText)findViewById(R.id.reg_stuclass);
        text_reg_stuname=(EditText)findViewById(R.id.reg_stuname);
        text_reg_stuphone=(EditText)findViewById(R.id.reg_stuphone);
        StudentDate stuDate=new StudentDate(text_reg_stuclass.getText().toString(),
                text_reg_stuid.getText().toString(),
                text_reg_stuname.getText().toString(),
                text_reg_stuphone.getText().toString() );
        studao=new StuDao(this,stuDate);
        long flag=studao.insertDB();
        if(flag>0){
            Toast.makeText(RegActivity.this,"注册成功,请返回登录",Toast.LENGTH_LONG).show();
            Intent intent=new Intent();
            intent.putExtra("stuid",text_reg_stuid.getText().toString());
            intent.putExtra("stuphone",text_reg_stuphone.getText().toString());
            setResult(1,intent);
            finish();
        }
        else{
            Toast.makeText(RegActivity.this,"注册失败",Toast.LENGTH_LONG).show();
        }
    }
}

 

posted @ 2021-03-04 22:47  风吹过半夏  阅读(71)  评论(0编辑  收藏  举报