diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index bd7fb96..65a73a0 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -12,6 +12,9 @@ android:supportsRtl="true" android:theme="@style/Theme.TimerT" tools:targetApi="31"> + @@ -23,10 +26,10 @@ android:exported="false" /> + android:exported="true" /> + android:exported="true" /> diff --git a/app/src/main/java/com/example/timert/AddWorkout.kt b/app/src/main/java/com/example/timert/AddWorkout.kt index 62f62f9..e4d762a 100644 --- a/app/src/main/java/com/example/timert/AddWorkout.kt +++ b/app/src/main/java/com/example/timert/AddWorkout.kt @@ -4,6 +4,8 @@ import android.app.AlertDialog import android.content.Intent import android.os.Bundle import android.widget.Button +import android.widget.EditText +import android.widget.ImageView import androidx.activity.enableEdgeToEdge import androidx.appcompat.app.AppCompatActivity import androidx.core.view.ViewCompat @@ -53,5 +55,46 @@ class AddWorkout : AppCompatActivity() { val intent = Intent(this, CreatingTraining::class.java) startActivity(intent) } + val timeInputRestSetAll: EditText = findViewById(R.id.rest_sets_all) + val btnPlusTimeAll: ImageView = findViewById(R.id.add_res_set2) + val btnMinusTimeAll: ImageView = findViewById(R.id.del_res_set2) + + val setsInputAll: EditText = findViewById(R.id.numbers_of_sets_all) + val btnPlusSetsAll: ImageView = findViewById(R.id.add_set3) + val btnMinusSetsAll: ImageView = findViewById(R.id.del_set3) + + val timeInputRest: EditText = findViewById(R.id.rest_workout_all) + val btnPlusTimeWor: ImageView = findViewById(R.id.add_res) + val btnMinusTimeWor: ImageView = findViewById(R.id.del_res) + + val timeWork: EditText = findViewById(R.id.time_work_all) + val Plus: ImageView = findViewById(R.id.add_set) + val Minus: ImageView = findViewById(R.id.del_set) + + setupPlusMinus(timeInputRestSetAll, btnPlusTimeAll, btnMinusTimeAll, minValue = 5, maxValue = 600) + setupPlusMinus(setsInputAll, btnPlusSetsAll, btnMinusSetsAll, minValue = 1, maxValue = 20) + setupPlusMinus(timeInputRest, btnPlusTimeWor, btnMinusTimeWor, minValue = 5, maxValue = 600) + setupPlusMinus(timeWork, Plus, Minus, minValue = 5, maxValue = 600) + + + } + fun setupPlusMinus( + editText: EditText, + plus: ImageView, + minus: ImageView, + minValue: Int = 5, + maxValue: Int = 600 + ) { + plus.setOnClickListener { + val current = editText.text.toString().toIntOrNull() ?: minValue + val newValue = (current + 1).coerceAtMost(maxValue) + editText.setText(newValue.toString()) + } + + minus.setOnClickListener { + val current = editText.text.toString().toIntOrNull() ?: minValue + val newValue = (current - 1).coerceAtLeast(minValue) + editText.setText(newValue.toString()) + } } } \ No newline at end of file diff --git a/app/src/main/java/com/example/timert/AllTraining.kt b/app/src/main/java/com/example/timert/AllTraining.kt index db2b385..08d61f2 100644 --- a/app/src/main/java/com/example/timert/AllTraining.kt +++ b/app/src/main/java/com/example/timert/AllTraining.kt @@ -28,6 +28,7 @@ class AllTraining : AppCompatActivity() { isSave = true } + val button_on_main_all: Button = findViewById(R.id.btn_on_main_all_vse) button_on_main_all.setOnClickListener { if (isSave == false) { diff --git a/app/src/main/java/com/example/timert/CreatingTraining.kt b/app/src/main/java/com/example/timert/CreatingTraining.kt index 5b6d0a7..963d140 100644 --- a/app/src/main/java/com/example/timert/CreatingTraining.kt +++ b/app/src/main/java/com/example/timert/CreatingTraining.kt @@ -4,7 +4,9 @@ import android.app.AlertDialog import android.content.Intent import android.os.Bundle import android.widget.Button +import android.widget.EditText import android.widget.ImageButton +import android.widget.ImageView import androidx.activity.enableEdgeToEdge import androidx.appcompat.app.AppCompatActivity import androidx.core.view.ViewCompat @@ -29,6 +31,16 @@ class CreatingTraining : AppCompatActivity() { startActivity(intent) } + val timeInputRest: EditText = findViewById(R.id.rest_sets) + val btnPlusTime: ImageView = findViewById(R.id.add_res) + val btnMinusTime: ImageView = findViewById(R.id.del_res) + + val setsInput: EditText = findViewById(R.id.numbers_of_sets) + val btnPlusSets: ImageView = findViewById(R.id.add_set) + val btnMinusSets: ImageView = findViewById(R.id.del_set) + + setupPlusMinus(timeInputRest, btnPlusTime, btnMinusTime, minValue = 5, maxValue = 600) + setupPlusMinus(setsInput, btnPlusSets, btnMinusSets, minValue = 1, maxValue = 20) val button_on_main: Button = findViewById(R.id.btn_on_main) button_on_main.setOnClickListener { if(isSave==false){ @@ -57,4 +69,23 @@ class CreatingTraining : AppCompatActivity() { } } + fun setupPlusMinus( + editText: EditText, + plus: ImageView, + minus: ImageView, + minValue: Int = 5, + maxValue: Int = 600 + ) { + plus.setOnClickListener { + val current = editText.text.toString().toIntOrNull() ?: minValue + val newValue = (current + 1).coerceAtMost(maxValue) + editText.setText(newValue.toString()) + } + + minus.setOnClickListener { + val current = editText.text.toString().toIntOrNull() ?: minValue + val newValue = (current - 1).coerceAtLeast(minValue) + editText.setText(newValue.toString()) + } + } } \ No newline at end of file diff --git a/app/src/main/java/com/example/timert/History.kt b/app/src/main/java/com/example/timert/History.kt new file mode 100644 index 0000000..5e38a06 --- /dev/null +++ b/app/src/main/java/com/example/timert/History.kt @@ -0,0 +1,27 @@ +package com.example.timert + +import android.content.Intent +import android.os.Bundle +import android.widget.Button +import androidx.activity.enableEdgeToEdge +import androidx.appcompat.app.AppCompatActivity +import androidx.core.view.ViewCompat +import androidx.core.view.WindowInsetsCompat + +class History : AppCompatActivity() { + override fun onCreate(savedInstanceState: Bundle?) { + super.onCreate(savedInstanceState) + enableEdgeToEdge() + setContentView(R.layout.activity_history) + ViewCompat.setOnApplyWindowInsetsListener(findViewById(R.id.main)) { v, insets -> + val systemBars = insets.getInsets(WindowInsetsCompat.Type.systemBars()) + v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom) + insets + } + val button_on_main: Button = findViewById(R.id.btn_on_main) + button_on_main.setOnClickListener { + val intent = Intent(this, MainActivity::class.java) + startActivity(intent) + } + } +} \ No newline at end of file diff --git a/app/src/main/java/com/example/timert/MainActivity.kt b/app/src/main/java/com/example/timert/MainActivity.kt index b365dcf..ada6afe 100644 --- a/app/src/main/java/com/example/timert/MainActivity.kt +++ b/app/src/main/java/com/example/timert/MainActivity.kt @@ -2,6 +2,7 @@ package com.example.timert import android.content.Intent import android.os.Bundle +import android.view.View import android.widget.Button import android.widget.Toast import androidx.activity.enableEdgeToEdge @@ -46,9 +47,16 @@ class MainActivity : AppCompatActivity() { val newTemplateButton: Button = findViewById(R.id.newTemplateButton) newTemplateButton.setOnClickListener { //Toast.makeText(this, "Создание нового шаблона!", Toast.LENGTH_SHORT).show() // Заглушка - //TODO: Intent для открытия Activity создания шаблона (форма 3) + //TODO: Intent для открытия Activity создания шаблона (форма 7) + val intent = Intent(this, History::class.java) + startActivity(intent) + } + val exits: Button = findViewById(R.id.btn_exit) + exits.setOnClickListener { + finish() + } } -} \ No newline at end of file +} diff --git a/app/src/main/res/layout/activity_add_workout.xml b/app/src/main/res/layout/activity_add_workout.xml index 9d7062b..965baf5 100644 --- a/app/src/main/res/layout/activity_add_workout.xml +++ b/app/src/main/res/layout/activity_add_workout.xml @@ -63,22 +63,27 @@ android:id="@+id/del_set3" android:layout_width="wrap_content" android:layout_height="37dp" + android:layout_gravity="center" android:layout_weight="1" app:srcCompat="@drawable/ic_remove_24px" /> - + android:ems="10" + android:gravity="center" + android:inputType="number" + android:text="1" + android:textSize="26sp" /> @@ -97,25 +102,30 @@ android:orientation="horizontal"> - + android:ems="10" + android:gravity="center" + android:inputType="number" + android:text="5" + android:textSize="26sp" /> @@ -138,22 +148,27 @@ android:id="@+id/del_set" android:layout_width="wrap_content" android:layout_height="37dp" + android:layout_gravity="center" android:layout_weight="1" app:srcCompat="@drawable/ic_remove_24px" /> - + android:ems="10" + android:gravity="center" + android:inputType="number" + android:text="5" + android:textSize="26sp" /> @@ -175,22 +190,27 @@ android:id="@+id/del_res" android:layout_width="wrap_content" android:layout_height="37dp" + android:layout_gravity="center" android:layout_weight="1" app:srcCompat="@drawable/ic_remove_24px" /> - + android:ems="10" + android:gravity="center" + android:inputType="number" + android:text="5" + android:textSize="26sp" /> diff --git a/app/src/main/res/layout/activity_all_training.xml b/app/src/main/res/layout/activity_all_training.xml index 7446484..bb73104 100644 --- a/app/src/main/res/layout/activity_all_training.xml +++ b/app/src/main/res/layout/activity_all_training.xml @@ -40,7 +40,7 @@ - + android:ems="10" + android:gravity="center" + android:inputType="number" + android:text="5" + android:textSize="26sp" /> @@ -94,29 +99,34 @@ - + android:ems="10" + android:gravity="center" + android:inputType="number" + android:text="5" + android:textSize="26sp" /> diff --git a/app/src/main/res/layout/activity_creating_training.xml b/app/src/main/res/layout/activity_creating_training.xml index cc1c7df..367f3c5 100644 --- a/app/src/main/res/layout/activity_creating_training.xml +++ b/app/src/main/res/layout/activity_creating_training.xml @@ -40,7 +40,7 @@ - + android:ems="10" + android:gravity="center" + android:inputType="number" + android:text="1" + android:textSize="26sp" /> @@ -94,29 +99,34 @@ - + android:ems="10" + android:gravity="center" + android:inputType="number" + android:text="5" + android:textSize="26sp" /> diff --git a/app/src/main/res/layout/activity_history.xml b/app/src/main/res/layout/activity_history.xml new file mode 100644 index 0000000..d18ee74 --- /dev/null +++ b/app/src/main/res/layout/activity_history.xml @@ -0,0 +1,57 @@ + + + + + + + +