Skip to content
Snippets Groups Projects
Commit 7039ada2 authored by Hasret Yilmaztürk's avatar Hasret Yilmaztürk
Browse files

ToDoList Button hinzugefügt

parent 6aa97749
No related branches found
No related tags found
No related merge requests found
......@@ -5,29 +5,14 @@ import android.content.pm.PackageManager
import android.os.Bundle
import androidx.activity.ComponentActivity
import androidx.activity.compose.setContent
import androidx.compose.foundation.layout.Arrangement
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.Row
import androidx.compose.foundation.layout.Spacer
import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.height
import androidx.compose.foundation.layout.width
import androidx.compose.material3.Button
import androidx.compose.material3.ButtonDefaults
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Surface
import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
import androidx.compose.runtime.getValue
import androidx.compose.runtime.mutableIntStateOf
import androidx.compose.runtime.mutableLongStateOf
import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.remember
import androidx.compose.runtime.setValue
import androidx.compose.foundation.layout.*
import androidx.compose.foundation.text.KeyboardOptions
import androidx.compose.material3.*
import androidx.compose.runtime.*
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.text.input.KeyboardType
import androidx.compose.ui.unit.dp
import androidx.core.app.ActivityCompat
import com.pomo.myapplication.ui.theme.MyApplicationTheme
......@@ -55,7 +40,7 @@ class MainActivity : ComponentActivity() {
modifier = Modifier.fillMaxSize(),
color = MaterialTheme.colorScheme.background
) {
TimerScreen()
MainScreen()
}
}
}
......@@ -84,7 +69,18 @@ class MainActivity : ComponentActivity() {
}
@Composable
fun TimerScreen() {
fun MainScreen() {
var showToDoList by remember { mutableStateOf(false) }
if (showToDoList) {
ToDoListScreen()
} else {
TimerScreen(onToDoListClick = { showToDoList = true })
}
}
@Composable
fun TimerScreen(onToDoListClick: () -> Unit) {
var timeLeftInMillis by remember { mutableLongStateOf(25 * 60 * 1000L) }
var timerRunning by remember { mutableStateOf(false) }
var customMinutes by remember { mutableIntStateOf(0) }
......@@ -250,6 +246,10 @@ class MainActivity : ComponentActivity() {
onDismiss = { showDialog = false }
)
}
Spacer(modifier = Modifier.height(20.dp))
Button(onClick = onToDoListClick) {
Text(text = "Go to To-Do List")
}
}
}
......@@ -261,17 +261,19 @@ class MainActivity : ComponentActivity() {
onConfirm: () -> Unit,
onDismiss: () -> Unit
) {
androidx.compose.material3.AlertDialog(
AlertDialog(
onDismissRequest = onDismiss,
title = { Text(text = "Set Custom Timer") },
text = {
Column {
Text(text = "Enter the number of minutes:")
Spacer(modifier = Modifier.height(8.dp))
androidx.compose.material3.TextField(
TextField(
value = inputMinutes,
onValueChange = onMinutesChange,
modifier = Modifier.fillMaxWidth()
modifier = Modifier.fillMaxWidth(),
keyboardOptions = KeyboardOptions.Default.copy(keyboardType = KeyboardType.Number),
placeholder = { Text(text = "Enter minutes") }
)
}
},
......@@ -295,3 +297,4 @@ class MainActivity : ComponentActivity() {
style = MaterialTheme.typography.displayLarge
)
}
}
package com.pomo.myapplication
import androidx.compose.foundation.layout.*
import androidx.compose.foundation.lazy.LazyColumn
import androidx.compose.foundation.lazy.items
import androidx.compose.foundation.text.BasicTextField
import androidx.compose.material3.*
import androidx.compose.runtime.*
import androidx.compose.ui.Modifier
import androidx.compose.ui.unit.dp
import androidx.compose.ui.tooling.preview.Preview
@Composable
fun ToDoListScreen() {
var toDoItems by remember { mutableStateOf(listOf<String>()) }
var newToDoItem by remember { mutableStateOf("") }
var showAddDialog by remember { mutableStateOf(false) }
Column(
modifier = Modifier.fillMaxSize().padding(16.dp),
verticalArrangement = Arrangement.spacedBy(8.dp)
) {
Text(
text = "To-Do List",
style = MaterialTheme.typography.headlineLarge
)
Button(onClick = { showAddDialog = true }) {
Text(text = "Add To-Do")
}
Spacer(modifier = Modifier.height(8.dp))
LazyColumn {
items(toDoItems) { item ->
Row(
modifier = Modifier.fillMaxWidth().padding(8.dp),
horizontalArrangement = Arrangement.SpaceBetween
) {
Text(text = item)
Button(onClick = { toDoItems = toDoItems - item }) {
Text(text = "Delete")
}
}
}
}
if (showAddDialog) {
AddToDoDialog(
onDismiss = { showAddDialog = false },
onAdd = {
if (newToDoItem.isNotBlank()) {
toDoItems = toDoItems + newToDoItem
newToDoItem = ""
showAddDialog = false
}
},
newToDoItem = newToDoItem,
onNewToDoItemChange = { newToDoItem = it }
)
}
}
}
@Composable
fun AddToDoDialog(
onDismiss: () -> Unit,
onAdd: () -> Unit,
newToDoItem: String,
onNewToDoItemChange: (String) -> Unit
) {
AlertDialog(
onDismissRequest = onDismiss,
title = { Text(text = "Add To-Do") },
text = {
Column {
Text(text = "Enter the to-do item:")
Spacer(modifier = Modifier.height(8.dp))
BasicTextField(
value = newToDoItem,
onValueChange = onNewToDoItemChange,
modifier = Modifier.fillMaxWidth().padding(8.dp)
)
}
},
confirmButton = {
Button(onClick = onAdd) {
Text(text = "Add")
}
},
dismissButton = {
Button(onClick = onDismiss) {
Text(text = "Cancel")
}
}
)
}
@Preview(showBackground = true)
@Composable
fun PreviewToDoListScreen() {
ToDoListScreen()
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment