// StudentsDb2 Example // Source code file: MainActivity.java package it372.smiths.studentsdb2; import androidx.appcompat.app.AppCompatActivity; import android.content.ContentValues; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteException; import android.database.sqlite.SQLiteOpenHelper; import android.os.Bundle; import android.view.View; import android.widget.EditText; import android.widget.TextView; import android.widget.Toast; public class MainActivity extends AppCompatActivity { private SQLiteDatabase db; private EditText edtxtName, edtxtGender, edtxtGrade; private TextView txtName, txtGrade, txtGender; private Cursor cursor; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); SQLiteOpenHelper dbh = new StudentsDBHelper(this); try { db = dbh.getWritableDatabase(); } catch(SQLiteException e) { Toast toast = Toast.makeText(this, "Database not created.", Toast.LENGTH_LONG); } edtxtName = findViewById(R.id.edtxt_name); edtxtGrade = findViewById(R.id.edtxt_grade); edtxtGender = findViewById(R.id.edtxt_gender); txtName = findViewById(R.id.txt_name); txtGrade = findViewById(R.id.txt_grade); txtGender = findViewById(R.id.txt_gender); cursor = db.query("students", new String[ ] {"name", "grade", "gender"}, null, null, null, null, null); } public void onClickEnterData(View view) { String name = edtxtName.getText( ).toString( ); int grade = Integer.parseInt(edtxtGrade.getText( ).toString( )); String gender = edtxtGender.getText( ).toString( ); ContentValues studentValues = new ContentValues( ); studentValues.put("name", name); studentValues.put("grade", grade); studentValues.put("gender", gender); db.insert("students", null, studentValues); edtxtName.setText(""); edtxtGrade.setText(""); edtxtGender.setText(""); cursor = db.query("students", new String[ ] {"name", "grade", "gender"}, null, null, null, null, null); } public void onClickFirst(View view) { if (cursor.moveToFirst()) { String name = cursor.getString(0); int grade = cursor.getInt(1); String gender = cursor.getString(2); txtName.setText(name); txtGrade.setText(String.valueOf(grade)); txtGender.setText(gender); } else { txtName.setText(""); txtGrade.setText(""); txtGender.setText(""); } } public void onClickPrev(View view) { if (!cursor.isFirst( )) { cursor.moveToPrevious( ); String name = cursor.getString(0); int grade = cursor.getInt(1); String gender = cursor.getString(2); txtName.setText(name); txtGrade.setText(String.valueOf(grade)); txtGender.setText(gender); } else { txtName.setText(""); txtGrade.setText(""); txtGender.setText(""); } } public void onClickNext(View view) { System.out.println(cursor.isLast( )); if (!cursor.isLast( )) { cursor.moveToNext( ); String name = cursor.getString(0); int grade = cursor.getInt(1); String gender = cursor.getString(2); txtName.setText(name); txtGrade.setText(String.valueOf(grade)); txtGender.setText(gender); } else { System.out.println("In else statement."); txtName.setText(""); txtGrade.setText(""); txtGender.setText(""); } } public void onClickLast(View view) { if (cursor.moveToLast()) { String name = cursor.getString(0); int grade = cursor.getInt(1); String gender = cursor.getString(2); txtName.setText(name); txtGrade.setText(String.valueOf(grade)); txtGender.setText(gender); } else { txtName.setText(""); txtGrade.setText(""); txtGender.setText(""); } } }