#android #validation #android-edittext
#Android #проверка #android-edittext
Вопрос:
Я пытаюсь создать приложение для опроса с Android Studio, которое хранит данные в базе данных SQLite. Я сделал это так, но мое приложение показывает остановку предупреждения, потому что я ввел недопустимую запись, поэтому я хочу добавить проверку для ввода EditText из onCreate MyActivity, если это возможно для моего кода:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_buat_biodata);
dbHelper = new com.example.try1.DataHelper(this);
text1 = (EditText) findViewById(R.id.editText1);
text2 = (EditText) findViewById(R.id.editText2);
text3 = (EditText) findViewById(R.id.editText3);
text4 = (EditText) findViewById(R.id.editText4);
text5 = (EditText) findViewById(R.id.editText5);
ton1 = (Button) findViewById(R.id.button1);
ton2 = (Button) findViewById(R.id.button2);
ton1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
SQLiteDatabase db = dbHelper.getWritableDatabase();
db.execSQL("insert into biodata(no, nama, tgl, jk, alamat) values('"
text1.getText().toString() "','"
text2.getText().toString() "','"
text3.getText().toString() "','"
text4.getText().toString() "','"
text5.getText().toString() "')");
Toast.makeText(getApplicationContext(), "Berhasil", Toast.LENGTH_LONG).show();
MainActivity.ma.RefreshList();
finish();
}
});
ton2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
finish();
}
});
}
Ответ №1:
Перед вызовом методов SQLite (db.ExecSQL) вы должны написать несколько методов проверки. эти методы будут представлять собой комбинацию некоторых, если они еще обусловлены. Сначала вы должны проверить, содержат ли условия для всех полей правильные данные и заполнены текстом или нет, как показано ниже. код.
email = tie_emailId_SignUp.getText().toString();
password = tie_password_SignUp.getText().toString();
confirmPassword = tie_confirmPassword_SignUp.getText().toString();
if (!email.isEmpty() amp;amp; isvalidateEmail(email)) {
if (!password.isEmpty()) {
if (!confirmPassword.isEmpty() amp;amp; confirmPassword.equals(password)) {
}
}
}
}
Что-то вроде этого, в зависимости от вашей ситуации, а затем сохраните данные в своей базе данных.