For Full video click on below link :-
https://youtu.be/sUz4fqeanjI?si=A8AqBWCgu-5NnBOJ
Working with the activity_main.xml file.
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity"
android:orientation="vertical"
android:background="@color/white">
<EditText
android:layout_width="350dp"
android:layout_height="50dp"
android:inputType="text"
android:id="@+id/coursename"
android:hint="Enter Course Name"
tools:ignore="Autofill,HardcodedText"
android:textColorHint="@color/black"
android:textColor="@color/black"
android:layout_marginStart="30dp"
android:layout_marginTop="50dp"/>
<EditText
android:layout_width="350dp"
android:layout_height="50dp"
android:inputType="text"
android:id="@+id/courseDur"
android:textColor="@color/black"
android:hint="Enter Course Duration"
tools:ignore="Autofill,HardcodedText"
android:textColorHint="@color/black"
android:layout_marginStart="30dp"
android:layout_marginTop="20dp"/>
<EditText
android:layout_width="350dp"
android:layout_height="50dp"
android:inputType="text"
android:id="@+id/coursedes"
android:textColor="@color/black"
android:hint="Enter Course Description"
tools:ignore="Autofill,HardcodedText"
android:textColorHint="@color/black"
android:layout_marginStart="30dp"
android:layout_marginTop="20dp"/>
<Button
android:id="@+id/add"
android:layout_width="350dp"
android:layout_height="50dp"
android:layout_marginTop="20dp"
android:layout_marginStart="30dp"
android:text="Add course"
android:textColor="@color/white"
tools:ignore="HardcodedText" />
<Button
android:id="@+id/view"
android:layout_width="350dp"
android:layout_height="50dp"
android:layout_marginTop="20dp"
android:layout_marginStart="30dp"
android:text="View Data"
android:textColor="@color/white"
tools:ignore="HardcodedText" />
<Button
android:id="@+id/update"
android:layout_width="350dp"
android:layout_height="50dp"
android:layout_marginTop="20dp"
android:layout_marginStart="30dp"
android:text="Update Data"
android:textColor="@color/white"
tools:ignore="HardcodedText" />
<Button
android:id="@+id/delete"
android:layout_width="350dp"
android:layout_height="50dp"
android:layout_marginTop="20dp"
android:layout_marginStart="30dp"
android:text="Delete Data"
android:textColor="@color/white"
tools:ignore="HardcodedText" />
</LinearLayout>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity"
android:orientation="vertical"
android:background="@color/white">
<EditText
android:layout_width="350dp"
android:layout_height="50dp"
android:inputType="text"
android:id="@+id/coursename"
android:hint="Enter Course Name"
tools:ignore="Autofill,HardcodedText"
android:textColorHint="@color/black"
android:textColor="@color/black"
android:layout_marginStart="30dp"
android:layout_marginTop="50dp"/>
<EditText
android:layout_width="350dp"
android:layout_height="50dp"
android:inputType="text"
android:id="@+id/courseDur"
android:textColor="@color/black"
android:hint="Enter Course Duration"
tools:ignore="Autofill,HardcodedText"
android:textColorHint="@color/black"
android:layout_marginStart="30dp"
android:layout_marginTop="20dp"/>
<EditText
android:layout_width="350dp"
android:layout_height="50dp"
android:inputType="text"
android:id="@+id/coursedes"
android:textColor="@color/black"
android:hint="Enter Course Description"
tools:ignore="Autofill,HardcodedText"
android:textColorHint="@color/black"
android:layout_marginStart="30dp"
android:layout_marginTop="20dp"/>
<Button
android:id="@+id/add"
android:layout_width="350dp"
android:layout_height="50dp"
android:layout_marginTop="20dp"
android:layout_marginStart="30dp"
android:text="Add course"
android:textColor="@color/white"
tools:ignore="HardcodedText" />
<Button
android:id="@+id/view"
android:layout_width="350dp"
android:layout_height="50dp"
android:layout_marginTop="20dp"
android:layout_marginStart="30dp"
android:text="View Data"
android:textColor="@color/white"
tools:ignore="HardcodedText" />
<Button
android:id="@+id/update"
android:layout_width="350dp"
android:layout_height="50dp"
android:layout_marginTop="20dp"
android:layout_marginStart="30dp"
android:text="Update Data"
android:textColor="@color/white"
tools:ignore="HardcodedText" />
<Button
android:id="@+id/delete"
android:layout_width="350dp"
android:layout_height="50dp"
android:layout_marginTop="20dp"
android:layout_marginStart="30dp"
android:text="Delete Data"
android:textColor="@color/white"
tools:ignore="HardcodedText" />
</LinearLayout>
Working with the MainActivity.java file.
Go to the MainActivity.java file and refer to the following code. Below is the code for the MainActivity.java file.
package com.example.sqlite_demo;
import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity {
public Button add,view,update,delete;
public EditText name,des,dur;
public OpenHelper openHelper;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
name=findViewById(R.id.coursename);
des=findViewById(R.id.coursedes);
dur=findViewById(R.id.courseDur);
add = findViewById(R.id.add);
view = findViewById(R.id.view);
update=findViewById(R.id.update);
delete=findViewById(R.id.delete);
openHelper=new OpenHelper(MainActivity.this);
add.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String c_name=name.getText().toString();
String c_dur=dur.getText().toString();
String c_des=des.getText().toString();
if(c_name.isEmpty() && c_dur.isEmpty() && c_des.isEmpty()){
Toast.makeText(MainActivity.this, "Oops!! look like some fields are missing!!", Toast.LENGTH_SHORT).show();
return;
}
else {
openHelper.addNewCourse(c_name,c_dur,c_des);
Toast.makeText(MainActivity.this, "Course has been added!!", Toast.LENGTH_SHORT).show();
name.setText("");
dur.setText("");
des.setText("");
}
}
});
view.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent =new Intent(MainActivity.this, MainActivity2.class);
startActivity(intent);
}
});
update.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent =new Intent(MainActivity.this,MainActivity3.class);
startActivity(intent);
}
});
delete.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent(MainActivity.this,MainActivity4.class);
startActivity(intent);
}
});
}
}
import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity {
public Button add,view,update,delete;
public EditText name,des,dur;
public OpenHelper openHelper;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
name=findViewById(R.id.coursename);
des=findViewById(R.id.coursedes);
dur=findViewById(R.id.courseDur);
add = findViewById(R.id.add);
view = findViewById(R.id.view);
update=findViewById(R.id.update);
delete=findViewById(R.id.delete);
openHelper=new OpenHelper(MainActivity.this);
add.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String c_name=name.getText().toString();
String c_dur=dur.getText().toString();
String c_des=des.getText().toString();
if(c_name.isEmpty() && c_dur.isEmpty() && c_des.isEmpty()){
Toast.makeText(MainActivity.this, "Oops!! look like some fields are missing!!", Toast.LENGTH_SHORT).show();
return;
}
else {
openHelper.addNewCourse(c_name,c_dur,c_des);
Toast.makeText(MainActivity.this, "Course has been added!!", Toast.LENGTH_SHORT).show();
name.setText("");
dur.setText("");
des.setText("");
}
}
});
view.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent =new Intent(MainActivity.this, MainActivity2.class);
startActivity(intent);
}
});
update.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent =new Intent(MainActivity.this,MainActivity3.class);
startActivity(intent);
}
});
delete.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent(MainActivity.this,MainActivity4.class);
startActivity(intent);
}
});
}
}
Creating a new Layout Resource file for the recyclerview adapter design.
Below is the code for the userentry.xml file.
<androidx.cardview.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="370dp"
android:layout_height="150dp"
xmlns:app="http://schemas.android.com/apk/res-auto"
app:cardCornerRadius="15dp"
android:backgroundTint="#D8CFCF"
android:layout_marginStart="10dp"
android:layout_marginTop="20dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Course Name : "
android:textSize="20sp"
android:textColor="@color/black"
android:layout_marginTop="10dp"
android:layout_marginStart="10dp"
tools:ignore="HardcodedText" />
<TextView
android:id="@+id/textname"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="20sp"
android:textColor="@color/black"
android:layout_marginTop="10dp"
android:layout_marginStart="200dp"
tools:ignore="HardcodedText" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Course Duration : "
android:textSize="20sp"
android:textColor="@color/black"
android:layout_marginTop="50dp"
android:layout_marginStart="10dp"
tools:ignore="HardcodedText" />
<TextView
android:id="@+id/textdur"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="20sp"
android:textColor="@color/black"
android:layout_marginTop="50dp"
android:layout_marginStart="200dp"
tools:ignore="HardcodedText" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Course Description : "
android:textSize="20sp"
android:textColor="@color/black"
android:layout_marginTop="90dp"
android:layout_marginStart="10dp"
tools:ignore="HardcodedText" />
<TextView
android:id="@+id/textdes"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="20sp"
android:textColor="@color/black"
android:layout_marginTop="90dp"
android:layout_marginStart="200dp"
tools:ignore="HardcodedText" />
<ImageView
android:id="@+id/delbtn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/baseline_delete_24"
android:layout_marginStart="330dp"
android:layout_marginTop="15dp"
tools:ignore="ContentDescription" />
</androidx.cardview.widget.CardView>
Below is the code for the MyAdapter.xml file.
package com.example.sqlite_demo;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.recyclerview.widget.RecyclerView;
import java.util.ArrayList;
public class MyAdapter extends RecyclerView.Adapter<MyAdapter.MyViewHolder> {
public Context context;
public ArrayList cou_id;
public ArrayList cou_name;
public ArrayList cou_dur;
public ArrayList cou_des;
public OpenHelper openHelper;
public int itemid;
public MyAdapter(Context context,ArrayList cou_id,ArrayList cou_name,ArrayList cou_dur,ArrayList cou_des){
this.context=context;
this.cou_id=cou_id;
this.cou_name=cou_name;
this.cou_dur=cou_dur;
this.cou_des=cou_des;
}
@NonNull
@Override
public MyViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
View v = LayoutInflater.from(context).inflate(R.layout.userentry,parent,false);
return new MyViewHolder(v);
}
@Override
public void onBindViewHolder(@NonNull MyViewHolder holder, int position) {
holder.cou_name.setText(String.valueOf(cou_name.get(position)));
holder.cou_dur.setText(String.valueOf(cou_dur.get(position)));
holder.cou_des.setText(String.valueOf(cou_des.get(position)));
holder.btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
itemid = holder.getAdapterPosition();
deleteitem(itemid);
}
});
}
@Override
public int getItemCount() {
return cou_name.size();
}
public void deleteitem(int itemid){
cou_name.remove(itemid);
notifyItemRemoved(itemid);
}
public class MyViewHolder extends RecyclerView.ViewHolder {
TextView cou_name,cou_des,cou_dur;
ImageView btn;
public MyViewHolder(@NonNull View itemView) {
super(itemView);
cou_name=itemView.findViewById(R.id.textname);
cou_dur=itemView.findViewById(R.id.textdur);
cou_des=itemView.findViewById(R.id.textdes);
btn=itemView.findViewById(R.id.delbtn);
}
}
}
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.recyclerview.widget.RecyclerView;
import java.util.ArrayList;
public class MyAdapter extends RecyclerView.Adapter<MyAdapter.MyViewHolder> {
public Context context;
public ArrayList cou_id;
public ArrayList cou_name;
public ArrayList cou_dur;
public ArrayList cou_des;
public OpenHelper openHelper;
public int itemid;
public MyAdapter(Context context,ArrayList cou_id,ArrayList cou_name,ArrayList cou_dur,ArrayList cou_des){
this.context=context;
this.cou_id=cou_id;
this.cou_name=cou_name;
this.cou_dur=cou_dur;
this.cou_des=cou_des;
}
@NonNull
@Override
public MyViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
View v = LayoutInflater.from(context).inflate(R.layout.userentry,parent,false);
return new MyViewHolder(v);
}
@Override
public void onBindViewHolder(@NonNull MyViewHolder holder, int position) {
holder.cou_name.setText(String.valueOf(cou_name.get(position)));
holder.cou_dur.setText(String.valueOf(cou_dur.get(position)));
holder.cou_des.setText(String.valueOf(cou_des.get(position)));
holder.btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
itemid = holder.getAdapterPosition();
deleteitem(itemid);
}
});
}
@Override
public int getItemCount() {
return cou_name.size();
}
public void deleteitem(int itemid){
cou_name.remove(itemid);
notifyItemRemoved(itemid);
}
public class MyViewHolder extends RecyclerView.ViewHolder {
TextView cou_name,cou_des,cou_dur;
ImageView btn;
public MyViewHolder(@NonNull View itemView) {
super(itemView);
cou_name=itemView.findViewById(R.id.textname);
cou_dur=itemView.findViewById(R.id.textdur);
cou_des=itemView.findViewById(R.id.textdes);
btn=itemView.findViewById(R.id.delbtn);
}
}
}
Comments
Post a Comment