Task Manager
// MainActivity.java package com.example.taskmanager; import android.content.ContentValues; import android.content.DialogInterface; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; import android.os.Bundle; import android.view.LayoutInflater; import android.view.View; import android.widget.AdapterView; import android.widget.ArrayAdapter; import android.widget.Button; import android.widget.DatePicker; import android.widget.EditText; import android.widget.ListView; import android.widget.SimpleAdapter; import android.widget.Spinner; import android.widget.Toast; import androidx.appcompat.app.AlertDialog; import androidx.appcompat.app.AppCompatActivity; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Calendar; import java.util.HashMap; import java.util.Locale; import java.util.Map; public class MainActivity extends AppCompatActivity { private EditText taskNameEditText; private DatePicker dueDatePicker; private Spinner prioritySpinner; private Button saveTaskButton; private ListView tasksListView; private SQLiteDatabase database; private ArrayList tasksList; private SimpleAdapter adapter; private static final String DATABASE_NAME = "TaskManager"; private static final String TABLE_TASKS = "tasks"; private static final String COLUMN_ID = "id"; private static final String COLUMN_NAME = "name"; private static final String COLUMN_DATE = "date"; private static final String COLUMN_PRIORITY = "priority"; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // Initialize UI elements taskNameEditText = findViewById(R.id.taskNameEditText); dueDatePicker = findViewById(R.id.dueDatePicker); prioritySpinner = findViewById(R.id.prioritySpinner); saveTaskButton = findViewById(R.id.saveTaskButton); tasksListView = findViewById(R.id.tasksListView); // Set up priority spinner ArrayAdapter priorityAdapter = ArrayAdapter.createFromResource( this, R.array.priority_levels, android.R.layout.simple_spinner_item); priorityAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); prioritySpinner.setAdapter(priorityAdapter); // Create or open the database database = openOrCreateDatabase(DATABASE_NAME, MODE_PRIVATE, null); // Create the tasks table if it doesn't exist database.execSQL( "CREATE TABLE IF NOT EXISTS " + TABLE_TASKS + " (" + COLUMN_ID + " INTEGER PRIMARY KEY AUTOINCREMENT, " + COLUMN_NAME + " TEXT, " + COLUMN_DATE + " TEXT, " + COLUMN_PRIORITY + " TEXT)"); // Initialize tasks list and adapter tasksList = new ArrayList(); adapter = new SimpleAdapter( this, tasksList, R.layout.task_item, new String[]{"name", "date", "priority", "id"}, new int[]{R.id.taskNameTextView, R.id.taskDateTextView, R.id.taskPriorityTextView, R.id.taskIdTextView} ); tasksListView.setAdapter(adapter); loadTasks(); // Load existing tasks // Save task button click listener saveTaskButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { saveTask(); } }); // Set item click listener for editing or deleting tasks tasksListView.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView parent, View view, int position, long id) { showTaskOptionsDialog(position); } }); } private String getFormattedDate() { int day = dueDatePicker.getDayOfMonth(); int month = dueDatePicker.getMonth(); int year = dueDatePicker.getYear(); Calendar calendar = Calendar.getInstance(); calendar.set(year, month, day); SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd", Locale.getDefault()); return dateFormat.format(calendar.getTime()); } private void saveTask() { String taskName = taskNameEditText.getText().toString().trim(); String dueDate = getFormattedDate(); String priority = prioritySpinner.getSelectedItem().toString(); if (taskName.isEmpty()) { Toast.makeText(this, "Please enter a task name", Toast.LENGTH_SHORT).show(); return; } ContentValues values = new ContentValues(); values.put(COLUMN_NAME, taskName); values.put(COLUMN_DATE, dueDate); values.put(COLUMN_PRIORITY, priority); long result = database.insert(TABLE_TASKS, null, value

// MainActivity.java
package com.example.taskmanager;
import android.content.ContentValues;
import android.content.DialogInterface;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.DatePicker;
import android.widget.EditText;
import android.widget.ListView;
import android.widget.SimpleAdapter;
import android.widget.Spinner;
import android.widget.Toast;
import androidx.appcompat.app.AlertDialog;
import androidx.appcompat.app.AppCompatActivity;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.HashMap;
import java.util.Locale;
import java.util.Map;
public class MainActivity extends AppCompatActivity {
private EditText taskNameEditText;
private DatePicker dueDatePicker;
private Spinner prioritySpinner;
private Button saveTaskButton;
private ListView tasksListView;
private SQLiteDatabase database;
private ArrayList
// activity_main.xml
//edit_task_dialog.xml
//task_item.xml
//strings.xml
Task Manager
- High
- Medium
- Low