日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Android >内容正文

Android

Android 在添加数据至数据库时添加控制输入语句操作

發布時間:2024/9/30 Android 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Android 在添加数据至数据库时添加控制输入语句操作 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1.在將數據加入數據庫之前,我們要先進行判斷,通常在網頁中我們都是通過js來寫控制語句的,

那么在android studio中,如何編寫控制語句呢?

其實原理差不多,對于每一個輸入框,設置EditText的響應事件,當輸入滿足情況后,給出提示,最后,

添加一個總的判斷輸入條件函數,對于整體進行判斷,具體代碼如下所示

editText1=findViewById(R.id.register_inoutusername); editText2=findViewById(R.id.register_inputclass); editText3=findViewById(R.id.register_inputidnumber); editText4=findViewById(R.id.register_inputpsd); editText5=findViewById(R.id.register_input_aginpsd); //判斷姓名是否輸入符合規范 editText1.addTextChangedListener(new TextWatcher() {@Override public void beforeTextChanged(CharSequence charSequence, int i, int i1, int i2) {}@Override public void onTextChanged(CharSequence charSequence, int i, int i1, int i2) {}public void afterTextChanged(Editable editable) {String ss="^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{6,15}$";//字母數字6到15位 Pattern pattern = Pattern.compile(ss); Matcher matcher = pattern.matcher(editable.toString()); //int len=editText1.toString().length(); if(matcher.matches())Toast.makeText(register.this, "姓名符合規范!", Toast.LENGTH_SHORT).show(); } }); //判斷班級輸入是否符合規范 editText2.addTextChangedListener(new TextWatcher() {@Override public void beforeTextChanged(CharSequence charSequence, int i, int i1, int i2) {}@Override public void onTextChanged(CharSequence charSequence, int i, int i1, int i2) {}@Override public void afterTextChanged(Editable editable) {int len=editable.toString().length(); if(len>4&&len<15)Toast.makeText(register.this, "班級輸入符合規范!", Toast.LENGTH_SHORT).show(); } }); //判斷學號輸入是否規范 editText3.addTextChangedListener(new TextWatcher() {@Override public void beforeTextChanged(CharSequence charSequence, int i, int i1, int i2) {}@Override public void onTextChanged(CharSequence charSequence, int i, int i1, int i2) {}@Override public void afterTextChanged(Editable editable) {String ss="^[0-9]{13}$"; Pattern pattern = Pattern.compile(ss); Matcher matcher = pattern.matcher(editable.toString()); //int len=editable.toString().length(); if(matcher.matches())Toast.makeText(register.this, "學號輸入符合規范!", Toast.LENGTH_SHORT).show(); } }); //判斷密碼輸入是否規范 editText4.addTextChangedListener(new TextWatcher() {@Override public void beforeTextChanged(CharSequence charSequence, int i, int i1, int i2) {}@Override public void onTextChanged(CharSequence charSequence, int i, int i1, int i2) {}@Override public void afterTextChanged(Editable editable) {String ss="^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{6,21}$";//字母數字6到15位 Pattern pattern = Pattern.compile(ss); Matcher matcher = pattern.matcher(editable.toString()); int len=editable.toString().length(); if (matcher.matches())Toast.makeText(register.this, "密碼格式正確!", Toast.LENGTH_SHORT).show(); } }); //判斷兩次密碼是否輸入一致 editText5.addTextChangedListener(new TextWatcher() {@Override public void beforeTextChanged(CharSequence charSequence, int i, int i1, int i2) {}@Override public void onTextChanged(CharSequence charSequence, int i, int i1, int i2) {}@Override public void afterTextChanged(Editable editable) {String s1=editText4.getText().toString(); String s2=editText5.getText().toString(); if (s1.equals(s2))Toast.makeText(register.this, "兩次輸入密碼一致!", Toast.LENGTH_SHORT).show(); } });

對于五個文本輸入框的判斷,分別為姓名、班級、學號、密碼、二次密碼,密碼和班級、學號要有相應的正則表達式

2.輸入提示寫完后,在點擊注冊按鈕后,還要對于整體進行一個判斷

代碼如下:

private boolean checkall(String s1,String s2,String s3,String s4,String s5){if(check_class(s2)&&check_idnumber(s3)&&check_password(s4,s5)&&check_username(s1)){AlertDialog.Builder dialog=new AlertDialog.Builder(register.this); dialog.setTitle("提示"); dialog.setMessage("注冊成功!"); dialog.setCancelable(false); dialog.setPositiveButton("OK", new DialogInterface.OnClickListener() {@Override public void onClick(DialogInterface dialogInterface, int i) {Intent intent = new Intent(register.this, MainActivity.class); startActivity(intent); }}); dialog.setNegativeButton("CANCEL", new DialogInterface.OnClickListener() {@Override public void onClick(DialogInterface dialogInterface, int i) {Intent intent = new Intent(register.this, register.class); startActivity(intent); }}); dialog.show(); return true; }else {AlertDialog.Builder dialog=new AlertDialog.Builder(register.this); dialog.setTitle("提示"); dialog.setMessage("注冊失敗!"); dialog.setCancelable(false); dialog.setPositiveButton("OK", new DialogInterface.OnClickListener() {@Override public void onClick(DialogInterface dialogInterface, int i) {Intent intent = new Intent(register.this, register.class); startActivity(intent); }}); dialog.show(); return false; }}private boolean check_username(String s){editText1=findViewById(R.id.register_inoutusername); String ss="^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{6,15}$";//字母數字6到15位 Pattern pattern = Pattern.compile(ss); Matcher matcher = pattern.matcher(s); if(matcher.matches())return true; else return false; }private boolean check_class(String s){if(s.length()<4||s.length()>15)return false; else return true; }private boolean check_idnumber(String s){String ss="^[0-9]{13}$"; Pattern pattern = Pattern.compile(ss); Matcher matcher = pattern.matcher(s); if (matcher.matches())return true; else return false; }private boolean check_password(String s1,String s2){String ss="^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{6,15}$";//字母數字6到15位 Pattern pattern = Pattern.compile(ss); Matcher matcher = pattern.matcher(s1); if(matcher.matches()&&s1.equals(s2))return true; else return false; } }

成功則跳轉至另一界面,失敗重新填寫

3.數據庫的插入操作,在插入之前,要先判斷數據庫中是否存在此數據,這里我們學號為判斷條件,沒有時執行插入操作,此外,只要在所有輸入判斷成功的條件下才能完成插入操作,代碼如下所示:

Cursor cursor=db.rawQuery("select* from user where id_number =?",new String[]{s3}); if (cursor.moveToFirst()) {{Toast.makeText(register.this, "已存在用戶! 請重新輸入!", Toast.LENGTH_LONG).show(); Intent intent = new Intent(register.this, register.class); startActivity(intent); }cursor.close(); break; } if (checkall(s1,s2,s3,s4,s5)) {ContentValues values=new ContentValues(); values.put("name",s1); values.put("class",s2); values.put("id_number",s3); values.put("password",s4); values.put("type",0); values.put("sign_number",0); //插入表中 //db.insert("user",null,values); dbhelper.insert(db,"user",values); values.clear(); db.close();

4.app界面



總結

以上是生活随笔為你收集整理的Android 在添加数据至数据库时添加控制输入语句操作的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。