To Do list app //simple layout in kotline language

 


To Do list app step by step

ठीक है! Kotlin का उपयोग करके एक To-Do List App बनाने के लिए हमें निम्नलिखित स्टेप्स को फॉलो करना होगा। मैं आपको बेसिक गाइड और कोड का विवरण दे रहा हूँ।

1. Requirements

  • Android Studio इंस्टॉल करें।
  • Kotlin प्रोग्रामिंग लैंग्वेज का बेसिक ज्ञान।

  • To-Do List App का फीचर सेट
    • Add Task: नया काम जोड़ें।
    • View Tasks: कामों की सूची देखें।
    • Delete Task: किसी काम को हटाएं।
    • Mark as Done: काम को पूरा मार्क करें।

3. स्टेप्स

Step 1: Create a New Project

  1. Android Studio खोलें।
  2. Create New Project > Select Empty Activity > Select Kotlin as the language.

Step 2: Add Dependencies

app/build.gradle में नीचे दी गई dependencies जोड़ें:

implementation 'androidx.recyclerview:recyclerview:1.3.0'

implementation 'com.google.android.material:material:1.9.0'


(XML) Layout 

Step 3: Layout Files बनाएं

activity_main.xml

<LinearLayout

    xmlns:android="http://schemas.android.com/apk/res/android"

  android:layout_width="match_parent"   android:layout_height="match_parent"   android:orientation="vertical">


    <EditText

        android:id="@+id/editTextTask"

        android:layout_width="match_parent"

        android:layout_height="wrap_content"

        android:hint="Enter task" />


    <Button

        android:id="@+id/buttonAddTask"

        android:layout_width="match_parent"

        android:layout_height="wrap_content"

        android:text="Add Task" />


    <androidx.recyclerview.widget.RecyclerView

        android:id="@+id/recyclerViewTasks"

        android:layout_width="match_parent"

        android:layout_height="match_parent" />

</LinearLayout>


(Logical)

(Step 4: MainActivity Code)

import android.os.Bundle

import android.widget.Button

import android.widget.EditText

import androidx.appcompat.app.AppCompatActivity

import androidx.recyclerview.widget.LinearLayoutManager

import androidx.recyclerview.widget.RecyclerView


class MainActivity : AppCompatActivity() {


    private val taskList = mutableListOf<String>()

    private lateinit var taskAdapter: TaskAdapter


    override fun onCreate(savedInstanceState: Bundle?) {

        super.onCreate(savedInstanceState)

        setContentView(R.layout.activity_main)


        val editTextTask = findViewById<EditText>(R.id.editTextTask)

        val buttonAddTask = findViewById<Button>(R.id.buttonAddTask)

        val recyclerViewTasks = findViewById<RecyclerView>(R.id.recyclerViewTasks)


        taskAdapter = TaskAdapter(taskList)

        recyclerViewTasks.layoutManager = LinearLayoutManager(this)

        recyclerViewTasks.adapter = taskAdapter


        buttonAddTask.setOnClickListener {

            val task = editTextTask.text.toString()

            if (task.isNotEmpty()) {

                taskList.add(task)

                taskAdapter.notifyItemInserted(taskList.size - 1)

                editTextTask.text.clear()

            }

        }

    }

}


Step 5: RecyclerView Adapter

TaskAdapter.kt
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import android.widget.TextView
import androidx.recyclerview.widget.RecyclerView

class TaskAdapter(private val tasks: List<String>) :
    RecyclerView.Adapter<TaskAdapter.TaskViewHolder>() {

    class TaskViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) {
        val textViewTask: TextView = itemView.findViewById(android.R.id.text1)
    }

    override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): TaskViewHolder {
        val view = LayoutInflater.from(parent.context)
            .inflate(android.R.layout.simple_list_item_1, parent, false)
        return TaskViewHolder(view)
    }

    override fun onBindViewHolder(holder: TaskViewHolder, position: Int) {
        holder.textViewTask.text = tasks[position]
    }

    override fun getItemCount(): Int = tasks.size
}

6. App Run करें

  • प्रोजेक्ट को Build करें और अपने Emulator/Device पर Run करें।

  • आप अपने Tasks Add, View, और Delete करने के लिए इसे Modify कर सकते हैं।

Extra Features

  • Task को Done मार्क करने के लिए Checkbox जोड़ें।
  • Tasks को SQLite Database या Room का उपयोग करके स्टोर करें।

अगर आपको इसमें कोई मदद चाहिए, तो पूछ सकते हैं!

0 Comments