Compare commits
No commits in common. "main" and "main" have entirely different histories.
@ -12,9 +12,6 @@
|
|||||||
android:supportsRtl="true"
|
android:supportsRtl="true"
|
||||||
android:theme="@style/Theme.TimerT"
|
android:theme="@style/Theme.TimerT"
|
||||||
tools:targetApi="31">
|
tools:targetApi="31">
|
||||||
<activity
|
|
||||||
android:name=".History"
|
|
||||||
android:exported="false" />
|
|
||||||
<activity
|
<activity
|
||||||
android:name=".SettingsActivity"
|
android:name=".SettingsActivity"
|
||||||
android:exported="false" />
|
android:exported="false" />
|
||||||
@ -24,12 +21,6 @@
|
|||||||
<activity
|
<activity
|
||||||
android:name=".timer"
|
android:name=".timer"
|
||||||
android:exported="false" />
|
android:exported="false" />
|
||||||
<activity
|
|
||||||
android:name=".AllTraining"
|
|
||||||
android:exported="true" />
|
|
||||||
<activity
|
|
||||||
android:name=".AddWorkout"
|
|
||||||
android:exported="true" />
|
|
||||||
<activity
|
<activity
|
||||||
android:name=".MainActivity"
|
android:name=".MainActivity"
|
||||||
android:exported="true">
|
android:exported="true">
|
||||||
|
@ -4,8 +4,6 @@ import android.app.AlertDialog
|
|||||||
import android.content.Intent
|
import android.content.Intent
|
||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
import android.widget.Button
|
import android.widget.Button
|
||||||
import android.widget.EditText
|
|
||||||
import android.widget.ImageView
|
|
||||||
import androidx.activity.enableEdgeToEdge
|
import androidx.activity.enableEdgeToEdge
|
||||||
import androidx.appcompat.app.AppCompatActivity
|
import androidx.appcompat.app.AppCompatActivity
|
||||||
import androidx.core.view.ViewCompat
|
import androidx.core.view.ViewCompat
|
||||||
@ -55,46 +53,5 @@ class AddWorkout : AppCompatActivity() {
|
|||||||
val intent = Intent(this, CreatingTraining::class.java)
|
val intent = Intent(this, CreatingTraining::class.java)
|
||||||
startActivity(intent)
|
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())
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -4,8 +4,6 @@ import android.app.AlertDialog
|
|||||||
import android.content.Intent
|
import android.content.Intent
|
||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
import android.widget.Button
|
import android.widget.Button
|
||||||
import android.widget.EditText
|
|
||||||
import android.widget.ImageView
|
|
||||||
import androidx.activity.enableEdgeToEdge
|
import androidx.activity.enableEdgeToEdge
|
||||||
import androidx.appcompat.app.AppCompatActivity
|
import androidx.appcompat.app.AppCompatActivity
|
||||||
import androidx.core.view.ViewCompat
|
import androidx.core.view.ViewCompat
|
||||||
@ -25,12 +23,11 @@ class AllTraining : AppCompatActivity() {
|
|||||||
}
|
}
|
||||||
val buttonSaveAll: Button = findViewById(R.id.btn_save_all_vse)
|
val buttonSaveAll: Button = findViewById(R.id.btn_save_all_vse)
|
||||||
buttonSaveAll.setOnClickListener {
|
buttonSaveAll.setOnClickListener {
|
||||||
val intent = Intent(this, CreatingTraining::class.java)
|
val intent = Intent(this, MainActivity::class.java)
|
||||||
startActivity(intent)
|
startActivity(intent)
|
||||||
isSave = true
|
isSave = true
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
val button_on_main_all: Button = findViewById(R.id.btn_on_main_all_vse)
|
val button_on_main_all: Button = findViewById(R.id.btn_on_main_all_vse)
|
||||||
button_on_main_all.setOnClickListener {
|
button_on_main_all.setOnClickListener {
|
||||||
if (isSave == false) {
|
if (isSave == false) {
|
||||||
@ -51,35 +48,5 @@ class AllTraining : AppCompatActivity() {
|
|||||||
startActivity(intent)
|
startActivity(intent)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
val timeInputRest: EditText = findViewById(R.id.rest_workout)
|
|
||||||
val btnPlusTime: ImageView = findViewById(R.id.add_res)
|
|
||||||
val btnMinusTime: ImageView = findViewById(R.id.del_res)
|
|
||||||
|
|
||||||
val setsInput: EditText = findViewById(R.id.time_work)
|
|
||||||
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 = 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())
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -4,9 +4,7 @@ import android.app.AlertDialog
|
|||||||
import android.content.Intent
|
import android.content.Intent
|
||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
import android.widget.Button
|
import android.widget.Button
|
||||||
import android.widget.EditText
|
|
||||||
import android.widget.ImageButton
|
import android.widget.ImageButton
|
||||||
import android.widget.ImageView
|
|
||||||
import androidx.activity.enableEdgeToEdge
|
import androidx.activity.enableEdgeToEdge
|
||||||
import androidx.appcompat.app.AppCompatActivity
|
import androidx.appcompat.app.AppCompatActivity
|
||||||
import androidx.core.view.ViewCompat
|
import androidx.core.view.ViewCompat
|
||||||
@ -27,20 +25,8 @@ class CreatingTraining : AppCompatActivity() {
|
|||||||
buttonSave.setOnClickListener {
|
buttonSave.setOnClickListener {
|
||||||
|
|
||||||
isSave=true
|
isSave=true
|
||||||
val intent = Intent(this, MainActivity::class.java)
|
|
||||||
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)
|
val button_on_main: Button = findViewById(R.id.btn_on_main)
|
||||||
button_on_main.setOnClickListener {
|
button_on_main.setOnClickListener {
|
||||||
if(isSave==false){
|
if(isSave==false){
|
||||||
@ -62,30 +48,6 @@ class CreatingTraining : AppCompatActivity() {
|
|||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
val button_add: Button = findViewById(R.id.add_workout)
|
|
||||||
button_add.setOnClickListener {
|
|
||||||
val intent = Intent(this, AllTraining::class.java)
|
|
||||||
startActivity(intent)
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
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())
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
@ -1,27 +0,0 @@
|
|||||||
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)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
@ -2,7 +2,6 @@ package com.example.timert
|
|||||||
|
|
||||||
import android.content.Intent
|
import android.content.Intent
|
||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
import android.view.View
|
|
||||||
import android.widget.Button
|
import android.widget.Button
|
||||||
import android.widget.Toast
|
import android.widget.Toast
|
||||||
import androidx.activity.enableEdgeToEdge
|
import androidx.activity.enableEdgeToEdge
|
||||||
@ -32,31 +31,18 @@ class MainActivity : AppCompatActivity() {
|
|||||||
startTrainingButton.setOnClickListener {
|
startTrainingButton.setOnClickListener {
|
||||||
Toast.makeText(this, "Запуск тренировки!", Toast.LENGTH_SHORT).show() // Заглушка
|
Toast.makeText(this, "Запуск тренировки!", Toast.LENGTH_SHORT).show() // Заглушка
|
||||||
//TODO: Intent для запуска Activity тренировки (форма 5)
|
//TODO: Intent для запуска Activity тренировки (форма 5)
|
||||||
val intent = Intent(this, timer::class.java)
|
|
||||||
startActivity(intent)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
val templatesButton: Button = findViewById(R.id.templatesButton)
|
val templatesButton: Button = findViewById(R.id.templatesButton)
|
||||||
templatesButton.setOnClickListener {
|
templatesButton.setOnClickListener {
|
||||||
//Toast.makeText(this, "Открытие шаблонов!", Toast.LENGTH_SHORT).show() // Заглушка
|
Toast.makeText(this, "Открытие шаблонов!", Toast.LENGTH_SHORT).show() // Заглушка
|
||||||
//TODO: Intent для открытия Activity шаблонов (форма 3)
|
//TODO: Intent для открытия Activity шаблонов (форма 3)
|
||||||
val intent = Intent(this, AddWorkout::class.java)
|
|
||||||
startActivity(intent)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
val newTemplateButton: Button = findViewById(R.id.newTemplateButton)
|
val newTemplateButton: Button = findViewById(R.id.newTemplateButton)
|
||||||
newTemplateButton.setOnClickListener {
|
newTemplateButton.setOnClickListener {
|
||||||
//Toast.makeText(this, "Создание нового шаблона!", Toast.LENGTH_SHORT).show() // Заглушка
|
Toast.makeText(this, "Создание нового шаблона!", Toast.LENGTH_SHORT).show() // Заглушка
|
||||||
//TODO: Intent для открытия Activity создания шаблона (форма 7)
|
//TODO: Intent для открытия Activity создания шаблона (форма 3)
|
||||||
val intent = Intent(this, History::class.java)
|
|
||||||
startActivity(intent)
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
val exits: Button = findViewById(R.id.btn_exit)
|
|
||||||
exits.setOnClickListener {
|
|
||||||
finish()
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -1,7 +1,6 @@
|
|||||||
package com.example.timert
|
package com.example.timert
|
||||||
|
|
||||||
import android.content.Context
|
import android.content.Context
|
||||||
import android.content.Intent
|
|
||||||
import android.content.pm.PackageManager
|
import android.content.pm.PackageManager
|
||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
import android.widget.Switch
|
import android.widget.Switch
|
||||||
@ -17,17 +16,61 @@ class SettingsActivity : AppCompatActivity() {
|
|||||||
super.onCreate(savedInstanceState)
|
super.onCreate(savedInstanceState)
|
||||||
setContentView(R.layout.activity_settings2)
|
setContentView(R.layout.activity_settings2)
|
||||||
|
|
||||||
|
val versionTextView: TextView = findViewById(R.id.versionTextView)
|
||||||
|
val darkModeSwitch: Switch = findViewById(R.id.darkModeSwitch)
|
||||||
|
val aboutButton: Button = findViewById(R.id.aboutButton)
|
||||||
val developersButton: Button = findViewById(R.id.developersButton)
|
val developersButton: Button = findViewById(R.id.developersButton)
|
||||||
|
|
||||||
|
// Получаем сохраненное состояние темы из SharedPreferences
|
||||||
|
val sharedPreferences = getSharedPreferences("AppSettings", Context.MODE_PRIVATE)
|
||||||
|
val isDarkMode = sharedPreferences.getBoolean("DarkMode", false) // По умолчанию - светлая тема
|
||||||
|
darkModeSwitch.isChecked = isDarkMode
|
||||||
|
|
||||||
|
// Применяем тему
|
||||||
|
if (isDarkMode) {
|
||||||
|
AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_YES)
|
||||||
|
} else {
|
||||||
|
AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_NO)
|
||||||
|
}
|
||||||
|
|
||||||
|
try {
|
||||||
|
val packageInfo = packageManager.getPackageInfo(packageName, 0)
|
||||||
|
val versionName = packageInfo.versionName
|
||||||
|
versionTextView.text = "Версия: $versionName"
|
||||||
|
} catch (e: PackageManager.NameNotFoundException) {
|
||||||
|
versionTextView.text = "Версия: Неизвестно"
|
||||||
|
}
|
||||||
|
|
||||||
|
// Устанавливаем слушатель для Switch
|
||||||
|
darkModeSwitch.setOnCheckedChangeListener { _, isChecked ->
|
||||||
|
// Сохраняем состояние темы в SharedPreferences
|
||||||
|
val editor = sharedPreferences.edit()
|
||||||
|
editor.putBoolean("DarkMode", isChecked)
|
||||||
|
editor.apply()
|
||||||
|
|
||||||
|
// Применяем тему
|
||||||
|
if (isChecked) {
|
||||||
|
AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_YES)
|
||||||
|
} else {
|
||||||
|
AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_NO)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Обработчик нажатия на кнопку "О программе"
|
||||||
|
aboutButton.setOnClickListener {
|
||||||
|
AlertDialog.Builder(this)
|
||||||
|
.setTitle("О программе")
|
||||||
|
.setMessage("Краткое описание пользования приложением.\n\nНапример: Это приложение позволяет тренироваться, чтобы быть как арнольдшварцнигер 😄")
|
||||||
|
.setPositiveButton("ОК", null)
|
||||||
|
.show()
|
||||||
|
}
|
||||||
|
|
||||||
// Обработчик нажатия на кнопку "Разработчики"
|
// Обработчик нажатия на кнопку "Разработчики"
|
||||||
developersButton.setOnClickListener {
|
developersButton.setOnClickListener {
|
||||||
AlertDialog.Builder(this)
|
AlertDialog.Builder(this)
|
||||||
.setTitle("Разработчики")
|
.setTitle("Разработчики")
|
||||||
.setMessage(HtmlCompat.fromHtml(
|
.setMessage(HtmlCompat.fromHtml(
|
||||||
"<p style='margin-left: 2em;'><b>Программу разработали:</b></p><br>" +
|
"<p style='margin-left: 2em;'><b>Вятский государственный университет</b></p><br>" +
|
||||||
"<p style='margin-left: 2em;'>Емцова Надежда Александровна</p>" +
|
"<p style='margin-left: 2em;'>Емцова Надежда Александровна</p>" +
|
||||||
"<p style='margin-left: 2em;'>Новиков Николай Алексеевич</p>" +
|
"<p style='margin-left: 2em;'>Новиков Николай Алексеевич</p>" +
|
||||||
"<p style='margin-left: 2em;'>Пискун Алёна Викторовна</p>",
|
"<p style='margin-left: 2em;'>Пискун Алёна Викторовна</p>",
|
||||||
@ -36,10 +79,5 @@ class SettingsActivity : AppCompatActivity() {
|
|||||||
.setPositiveButton("ОК", null)
|
.setPositiveButton("ОК", null)
|
||||||
.show()
|
.show()
|
||||||
}
|
}
|
||||||
val on_main: Button = findViewById(R.id.btn_on_main)
|
|
||||||
on_main.setOnClickListener {
|
|
||||||
val intent = Intent(this, MainActivity::class.java)
|
|
||||||
startActivity(intent)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
}
|
@ -4,30 +4,15 @@ import android.app.AlertDialog
|
|||||||
import android.content.Intent
|
import android.content.Intent
|
||||||
import android.media.Image
|
import android.media.Image
|
||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
import android.os.CountDownTimer
|
|
||||||
import android.widget.Button
|
import android.widget.Button
|
||||||
import android.widget.ImageButton
|
import android.widget.ImageButton
|
||||||
import android.widget.TextView
|
|
||||||
import androidx.activity.enableEdgeToEdge
|
import androidx.activity.enableEdgeToEdge
|
||||||
import androidx.appcompat.app.AppCompatActivity
|
import androidx.appcompat.app.AppCompatActivity
|
||||||
import androidx.constraintlayout.widget.ConstraintLayout
|
|
||||||
import androidx.core.view.ViewCompat
|
import androidx.core.view.ViewCompat
|
||||||
import androidx.core.view.WindowInsetsCompat
|
import androidx.core.view.WindowInsetsCompat
|
||||||
|
|
||||||
class timer : AppCompatActivity() {
|
class timer : AppCompatActivity() {
|
||||||
private var isPlay = false
|
private var isPlay = false
|
||||||
|
|
||||||
private lateinit var statusText: TextView
|
|
||||||
private lateinit var timerText: TextView
|
|
||||||
private lateinit var statusSet: TextView
|
|
||||||
private lateinit var statusExercise: TextView
|
|
||||||
private var numApproaches = 3
|
|
||||||
private var numExercises = 5
|
|
||||||
private var restBetweenExercises = 30
|
|
||||||
private var restBetweenApproaches = 60
|
|
||||||
private var exerciseDuration = 45 // например, 45 секунд упражнение
|
|
||||||
private var currentTimer: CountDownTimer? = null
|
|
||||||
private var timeLeftInMillis: Long = 0
|
|
||||||
override fun onCreate(savedInstanceState: Bundle?) {
|
override fun onCreate(savedInstanceState: Bundle?) {
|
||||||
super.onCreate(savedInstanceState)
|
super.onCreate(savedInstanceState)
|
||||||
enableEdgeToEdge()
|
enableEdgeToEdge()
|
||||||
@ -37,18 +22,6 @@ class timer : AppCompatActivity() {
|
|||||||
v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom)
|
v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom)
|
||||||
insets
|
insets
|
||||||
}
|
}
|
||||||
statusText = findViewById(R.id.statusText)
|
|
||||||
timerText = findViewById(R.id.timerText)
|
|
||||||
statusSet = findViewById(R.id.number_set)
|
|
||||||
statusExercise = findViewById(R.id.num_exercise)
|
|
||||||
numApproaches = intent.getIntExtra("numApproaches", numApproaches)
|
|
||||||
numExercises = intent.getIntExtra("numExercises", numExercises)
|
|
||||||
restBetweenExercises = intent.getIntExtra("restBetweenExercises", restBetweenExercises)
|
|
||||||
restBetweenApproaches = intent.getIntExtra("restBetweenApproaches", restBetweenApproaches)
|
|
||||||
exerciseDuration = intent.getIntExtra("exerciseDuration", exerciseDuration)
|
|
||||||
|
|
||||||
startTraining()
|
|
||||||
|
|
||||||
val button: ImageButton = findViewById(R.id.stop)
|
val button: ImageButton = findViewById(R.id.stop)
|
||||||
button.setOnClickListener {
|
button.setOnClickListener {
|
||||||
AlertDialog.Builder(this)
|
AlertDialog.Builder(this)
|
||||||
@ -85,90 +58,5 @@ class timer : AppCompatActivity() {
|
|||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
private fun resumeTimer(onFinish: () -> Unit) {
|
|
||||||
currentTimer = object : CountDownTimer(timeLeftInMillis, 1000) {
|
|
||||||
override fun onTick(millisUntilFinished: Long) {
|
|
||||||
timeLeftInMillis = millisUntilFinished
|
|
||||||
timerText.text = "${millisUntilFinished / 1000}"
|
|
||||||
}
|
|
||||||
|
|
||||||
override fun onFinish() {
|
|
||||||
onFinish()
|
|
||||||
}
|
|
||||||
}.start()
|
|
||||||
}
|
|
||||||
|
|
||||||
private fun startTraining() {
|
|
||||||
var currentApproach = 1
|
|
||||||
val rootLayout = findViewById<ConstraintLayout>(R.id.main)
|
|
||||||
fun nextApproach() {
|
|
||||||
if (currentApproach > numApproaches) {
|
|
||||||
statusText.text = "Тренировка завершена!"
|
|
||||||
rootLayout.setBackgroundResource(R.drawable.blue_gradient)
|
|
||||||
timerText.text = "00:00"
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
var currentExercise = 1
|
|
||||||
|
|
||||||
fun nextExercise() {
|
|
||||||
if (currentExercise > numExercises) {
|
|
||||||
statusText.text = "Отдых между подходами"
|
|
||||||
rootLayout.setBackgroundResource(R.drawable.green_gradient)
|
|
||||||
startRest(restBetweenApproaches) {
|
|
||||||
currentApproach++
|
|
||||||
nextApproach()
|
|
||||||
}
|
|
||||||
return
|
|
||||||
}
|
|
||||||
rootLayout.setBackgroundResource(R.drawable.gradient_pink)
|
|
||||||
statusText.text="Работа"
|
|
||||||
|
|
||||||
statusExercise.text = "$currentExercise / $numExercises"
|
|
||||||
statusSet.text="$currentApproach"
|
|
||||||
startTimer(exerciseDuration) {
|
|
||||||
statusText.text = "Отдых"
|
|
||||||
rootLayout.setBackgroundResource(R.drawable.green_gradient)
|
|
||||||
startRest(restBetweenExercises) {
|
|
||||||
currentExercise++
|
|
||||||
nextExercise()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
nextExercise()
|
|
||||||
}
|
|
||||||
|
|
||||||
nextApproach()
|
|
||||||
}
|
|
||||||
|
|
||||||
private fun startTimer(seconds: Int, onFinish: () -> Unit) {
|
|
||||||
timeLeftInMillis = seconds * 1000L
|
|
||||||
object : CountDownTimer(seconds * 1000L, 1000) {
|
|
||||||
override fun onTick(millisUntilFinished: Long) {
|
|
||||||
timerText.text = "${millisUntilFinished / 1000}"
|
|
||||||
}
|
|
||||||
|
|
||||||
override fun onFinish() {
|
|
||||||
onFinish()
|
|
||||||
}
|
|
||||||
}.start()
|
|
||||||
}
|
|
||||||
|
|
||||||
private fun startRest(seconds: Int, onFinish: () -> Unit) {
|
|
||||||
val rootLayout = findViewById<ConstraintLayout>(R.id.main)
|
|
||||||
rootLayout.setBackgroundResource(R.drawable.green_gradient)
|
|
||||||
object : CountDownTimer(seconds * 1000L, 1000) {
|
|
||||||
override fun onTick(millisUntilFinished: Long) {
|
|
||||||
timerText.text = "${millisUntilFinished / 1000}"
|
|
||||||
statusText.text = "Отдых"
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
override fun onFinish() {
|
|
||||||
onFinish()
|
|
||||||
}
|
|
||||||
}.start()
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
@ -63,27 +63,22 @@
|
|||||||
android:id="@+id/del_set3"
|
android:id="@+id/del_set3"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="37dp"
|
android:layout_height="37dp"
|
||||||
android:layout_gravity="center"
|
|
||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
app:srcCompat="@drawable/ic_remove_24px" />
|
app:srcCompat="@drawable/ic_remove_24px" />
|
||||||
|
|
||||||
<EditText
|
<TextView
|
||||||
android:id="@+id/numbers_of_sets_all"
|
android:id="@+id/numbers_of_sets_all3"
|
||||||
android:layout_width="3dp"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="38dp"
|
||||||
android:layout_gravity="center"
|
|
||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
android:ems="10"
|
android:text="0"
|
||||||
android:gravity="center"
|
android:textAlignment="center"
|
||||||
android:inputType="number"
|
android:textSize="34sp" />
|
||||||
android:text="1"
|
|
||||||
android:textSize="26sp" />
|
|
||||||
|
|
||||||
<ImageView
|
<ImageView
|
||||||
android:id="@+id/add_set3"
|
android:id="@+id/add_set3"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="37dp"
|
android:layout_height="37dp"
|
||||||
android:layout_gravity="center"
|
|
||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
app:srcCompat="@drawable/ic_add_24px" />
|
app:srcCompat="@drawable/ic_add_24px" />
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
@ -102,30 +97,25 @@
|
|||||||
android:orientation="horizontal">
|
android:orientation="horizontal">
|
||||||
|
|
||||||
<ImageView
|
<ImageView
|
||||||
android:id="@+id/del_res_set2"
|
android:id="@+id/del_set2"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="37dp"
|
android:layout_height="37dp"
|
||||||
android:layout_gravity="center"
|
|
||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
app:srcCompat="@drawable/ic_remove_24px" />
|
app:srcCompat="@drawable/ic_remove_24px" />
|
||||||
|
|
||||||
<EditText
|
<TextView
|
||||||
android:id="@+id/rest_sets_all"
|
android:id="@+id/numbers_of_sets_all2"
|
||||||
android:layout_width="3dp"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="38dp"
|
||||||
android:layout_gravity="center"
|
|
||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
android:ems="10"
|
android:text="0"
|
||||||
android:gravity="center"
|
android:textAlignment="center"
|
||||||
android:inputType="number"
|
android:textSize="34sp" />
|
||||||
android:text="5"
|
|
||||||
android:textSize="26sp" />
|
|
||||||
|
|
||||||
<ImageView
|
<ImageView
|
||||||
android:id="@+id/add_res_set2"
|
android:id="@+id/add_set2"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="37dp"
|
android:layout_height="37dp"
|
||||||
android:layout_gravity="center"
|
|
||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
app:srcCompat="@drawable/ic_add_24px" />
|
app:srcCompat="@drawable/ic_add_24px" />
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
@ -148,27 +138,22 @@
|
|||||||
android:id="@+id/del_set"
|
android:id="@+id/del_set"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="37dp"
|
android:layout_height="37dp"
|
||||||
android:layout_gravity="center"
|
|
||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
app:srcCompat="@drawable/ic_remove_24px" />
|
app:srcCompat="@drawable/ic_remove_24px" />
|
||||||
|
|
||||||
<EditText
|
<TextView
|
||||||
android:id="@+id/time_work_all"
|
android:id="@+id/numbers_of_sets_allall"
|
||||||
android:layout_width="3dp"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="38dp"
|
||||||
android:layout_gravity="center"
|
|
||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
android:ems="10"
|
android:text="0"
|
||||||
android:gravity="center"
|
android:textAlignment="center"
|
||||||
android:inputType="number"
|
android:textSize="34sp" />
|
||||||
android:text="5"
|
|
||||||
android:textSize="26sp" />
|
|
||||||
|
|
||||||
<ImageView
|
<ImageView
|
||||||
android:id="@+id/add_set"
|
android:id="@+id/add_set"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="37dp"
|
android:layout_height="37dp"
|
||||||
android:layout_gravity="center"
|
|
||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
app:srcCompat="@drawable/ic_add_24px" />
|
app:srcCompat="@drawable/ic_add_24px" />
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
@ -190,27 +175,22 @@
|
|||||||
android:id="@+id/del_res"
|
android:id="@+id/del_res"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="37dp"
|
android:layout_height="37dp"
|
||||||
android:layout_gravity="center"
|
|
||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
app:srcCompat="@drawable/ic_remove_24px" />
|
app:srcCompat="@drawable/ic_remove_24px" />
|
||||||
|
|
||||||
<EditText
|
<TextView
|
||||||
android:id="@+id/rest_workout_all"
|
android:id="@+id/rest_sets_allall"
|
||||||
android:layout_width="3dp"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="39dp"
|
||||||
android:layout_gravity="center"
|
|
||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
android:ems="10"
|
android:text="0"
|
||||||
android:gravity="center"
|
android:textAlignment="center"
|
||||||
android:inputType="number"
|
android:textSize="34sp" />
|
||||||
android:text="5"
|
|
||||||
android:textSize="26sp" />
|
|
||||||
|
|
||||||
<ImageView
|
<ImageView
|
||||||
android:id="@+id/add_res"
|
android:id="@+id/add_res"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="37dp"
|
android:layout_height="37dp"
|
||||||
android:layout_gravity="center"
|
|
||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
app:srcCompat="@drawable/ic_add_24px" />
|
app:srcCompat="@drawable/ic_add_24px" />
|
||||||
|
|
||||||
|
@ -20,7 +20,7 @@
|
|||||||
android:id="@+id/textView2"
|
android:id="@+id/textView2"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:text="Добавить упражнение"
|
android:text="Тренировка"
|
||||||
android:textAlignment="center"
|
android:textAlignment="center"
|
||||||
android:textSize="34sp" />
|
android:textSize="34sp" />
|
||||||
|
|
||||||
@ -40,7 +40,7 @@
|
|||||||
<LinearLayout
|
<LinearLayout
|
||||||
android:id="@+id/setting_training"
|
android:id="@+id/setting_training"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="250dp"
|
android:layout_height="200dp"
|
||||||
android:layout_marginTop="37dp"
|
android:layout_marginTop="37dp"
|
||||||
android:orientation="vertical"
|
android:orientation="vertical"
|
||||||
app:layout_constraintTop_toBottomOf="@+id/linearLayout"
|
app:layout_constraintTop_toBottomOf="@+id/linearLayout"
|
||||||
@ -64,27 +64,22 @@
|
|||||||
android:id="@+id/del_set"
|
android:id="@+id/del_set"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="37dp"
|
android:layout_height="37dp"
|
||||||
android:layout_gravity="center"
|
|
||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
app:srcCompat="@drawable/ic_remove_24px" />
|
app:srcCompat="@drawable/ic_remove_24px" />
|
||||||
|
|
||||||
<EditText
|
<TextView
|
||||||
android:id="@+id/time_work"
|
android:id="@+id/numbers_of_sets_allall"
|
||||||
android:layout_width="3dp"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="38dp"
|
||||||
android:layout_gravity="center"
|
|
||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
android:ems="10"
|
android:text="0"
|
||||||
android:gravity="center"
|
android:textAlignment="center"
|
||||||
android:inputType="number"
|
android:textSize="34sp" />
|
||||||
android:text="5"
|
|
||||||
android:textSize="26sp" />
|
|
||||||
|
|
||||||
<ImageView
|
<ImageView
|
||||||
android:id="@+id/add_set"
|
android:id="@+id/add_set"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="37dp"
|
android:layout_height="37dp"
|
||||||
android:layout_gravity="center"
|
|
||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
app:srcCompat="@drawable/ic_add_24px" />
|
app:srcCompat="@drawable/ic_add_24px" />
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
@ -93,40 +88,35 @@
|
|||||||
android:id="@+id/textView8_all"
|
android:id="@+id/textView8_all"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:text="Отдых между упражнениями"
|
android:text="Отдых между подходами"
|
||||||
android:textAlignment="center"
|
android:textAlignment="center"
|
||||||
android:textSize="24sp" />
|
android:textSize="24sp" />
|
||||||
|
|
||||||
<LinearLayout
|
<LinearLayout
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="95dp"
|
android:layout_height="50dp"
|
||||||
android:orientation="horizontal">
|
android:orientation="horizontal">
|
||||||
|
|
||||||
<ImageView
|
<ImageView
|
||||||
android:id="@+id/del_res"
|
android:id="@+id/del_res"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="37dp"
|
android:layout_height="37dp"
|
||||||
android:layout_gravity="center"
|
|
||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
app:srcCompat="@drawable/ic_remove_24px" />
|
app:srcCompat="@drawable/ic_remove_24px" />
|
||||||
|
|
||||||
<EditText
|
<TextView
|
||||||
android:id="@+id/rest_workout"
|
android:id="@+id/rest_sets_allall"
|
||||||
android:layout_width="3dp"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="39dp"
|
||||||
android:layout_gravity="center"
|
|
||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
android:ems="10"
|
android:text="0"
|
||||||
android:gravity="center"
|
android:textAlignment="center"
|
||||||
android:inputType="number"
|
android:textSize="34sp" />
|
||||||
android:text="5"
|
|
||||||
android:textSize="26sp" />
|
|
||||||
|
|
||||||
<ImageView
|
<ImageView
|
||||||
android:id="@+id/add_res"
|
android:id="@+id/add_res"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="37dp"
|
android:layout_height="37dp"
|
||||||
android:layout_gravity="center"
|
|
||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
app:srcCompat="@drawable/ic_add_24px" />
|
app:srcCompat="@drawable/ic_add_24px" />
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
@ -141,21 +131,6 @@
|
|||||||
app:layout_constraintBottom_toBottomOf="parent"
|
app:layout_constraintBottom_toBottomOf="parent"
|
||||||
tools:layout_editor_absoluteX="7dp">
|
tools:layout_editor_absoluteX="7dp">
|
||||||
|
|
||||||
<Button
|
|
||||||
android:id="@+id/btn_on_main_all_vse"
|
|
||||||
android:layout_width="150dp"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:layout_gravity="center"
|
|
||||||
android:layout_marginLeft="20dp"
|
|
||||||
android:layout_marginRight="20dp"
|
|
||||||
android:layout_weight="1"
|
|
||||||
android:background="@drawable/gradient_purpure"
|
|
||||||
android:text="на главную"
|
|
||||||
android:textAlignment="center"
|
|
||||||
android:textColor="@color/white"
|
|
||||||
tools:layout_editor_absoluteX="16dp"
|
|
||||||
tools:layout_editor_absoluteY="653dp" />
|
|
||||||
|
|
||||||
<Button
|
<Button
|
||||||
android:id="@+id/btn_save_all_vse"
|
android:id="@+id/btn_save_all_vse"
|
||||||
android:layout_width="150dp"
|
android:layout_width="150dp"
|
||||||
@ -170,5 +145,20 @@
|
|||||||
android:textColor="@color/white"
|
android:textColor="@color/white"
|
||||||
tools:layout_editor_absoluteX="245dp"
|
tools:layout_editor_absoluteX="245dp"
|
||||||
tools:layout_editor_absoluteY="653dp" />
|
tools:layout_editor_absoluteY="653dp" />
|
||||||
|
|
||||||
|
<Button
|
||||||
|
android:id="@+id/btn_on_main_all_vse"
|
||||||
|
android:layout_width="150dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_gravity="center"
|
||||||
|
android:layout_marginLeft="20dp"
|
||||||
|
android:layout_marginRight="20dp"
|
||||||
|
android:layout_weight="1"
|
||||||
|
android:background="@drawable/gradient_purpure"
|
||||||
|
android:text="на главную"
|
||||||
|
android:textAlignment="center"
|
||||||
|
android:textColor="@color/white"
|
||||||
|
tools:layout_editor_absoluteX="16dp"
|
||||||
|
tools:layout_editor_absoluteY="653dp" />
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
@ -40,7 +40,7 @@
|
|||||||
<LinearLayout
|
<LinearLayout
|
||||||
android:id="@+id/setting_training"
|
android:id="@+id/setting_training"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="220dp"
|
android:layout_height="200dp"
|
||||||
android:layout_marginTop="37dp"
|
android:layout_marginTop="37dp"
|
||||||
android:orientation="vertical"
|
android:orientation="vertical"
|
||||||
app:layout_constraintTop_toBottomOf="@+id/linearLayout"
|
app:layout_constraintTop_toBottomOf="@+id/linearLayout"
|
||||||
@ -64,27 +64,22 @@
|
|||||||
android:id="@+id/del_set"
|
android:id="@+id/del_set"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="37dp"
|
android:layout_height="37dp"
|
||||||
android:layout_gravity="center"
|
|
||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
app:srcCompat="@drawable/ic_remove_24px" />
|
app:srcCompat="@drawable/ic_remove_24px" />
|
||||||
|
|
||||||
<EditText
|
<TextView
|
||||||
android:id="@+id/numbers_of_sets"
|
android:id="@+id/numbers_of_sets"
|
||||||
android:layout_width="3dp"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="38dp"
|
||||||
android:layout_gravity="center"
|
|
||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
android:ems="10"
|
android:text="0"
|
||||||
android:gravity="center"
|
android:textAlignment="center"
|
||||||
android:inputType="number"
|
android:textSize="34sp" />
|
||||||
android:text="1"
|
|
||||||
android:textSize="26sp" />
|
|
||||||
|
|
||||||
<ImageView
|
<ImageView
|
||||||
android:id="@+id/add_set"
|
android:id="@+id/add_set"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="37dp"
|
android:layout_height="37dp"
|
||||||
android:layout_gravity="center"
|
|
||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
app:srcCompat="@drawable/ic_add_24px" />
|
app:srcCompat="@drawable/ic_add_24px" />
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
@ -99,34 +94,29 @@
|
|||||||
|
|
||||||
<LinearLayout
|
<LinearLayout
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="50dp"
|
||||||
android:orientation="horizontal">
|
android:orientation="horizontal">
|
||||||
|
|
||||||
<ImageView
|
<ImageView
|
||||||
android:id="@+id/del_res"
|
android:id="@+id/del_res"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="37dp"
|
android:layout_height="37dp"
|
||||||
android:layout_gravity="center"
|
|
||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
app:srcCompat="@drawable/ic_remove_24px" />
|
app:srcCompat="@drawable/ic_remove_24px" />
|
||||||
|
|
||||||
<EditText
|
<TextView
|
||||||
android:id="@+id/rest_sets"
|
android:id="@+id/rest_sets"
|
||||||
android:layout_width="3dp"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="39dp"
|
||||||
android:layout_gravity="center"
|
|
||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
android:ems="10"
|
android:text="0"
|
||||||
android:gravity="center"
|
android:textAlignment="center"
|
||||||
android:inputType="number"
|
android:textSize="34sp" />
|
||||||
android:text="5"
|
|
||||||
android:textSize="26sp" />
|
|
||||||
|
|
||||||
<ImageView
|
<ImageView
|
||||||
android:id="@+id/add_res"
|
android:id="@+id/add_res"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="37dp"
|
android:layout_height="37dp"
|
||||||
android:layout_gravity="center"
|
|
||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
app:srcCompat="@drawable/ic_add_24px" />
|
app:srcCompat="@drawable/ic_add_24px" />
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
@ -1,57 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<androidx.constraintlayout.widget.ConstraintLayout 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:id="@+id/main"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="match_parent"
|
|
||||||
android:background="@drawable/gradient_purpure"
|
|
||||||
tools:context=".History">
|
|
||||||
|
|
||||||
<TextView
|
|
||||||
android:id="@+id/textView4"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:layout_marginTop="30dp"
|
|
||||||
android:text="История тренировок"
|
|
||||||
android:textAlignment="center"
|
|
||||||
android:textSize="34sp"
|
|
||||||
app:layout_constraintTop_toTopOf="parent" />
|
|
||||||
|
|
||||||
<LinearLayout
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="60dp"
|
|
||||||
android:layout_marginBottom="35dp"
|
|
||||||
android:orientation="horizontal"
|
|
||||||
app:layout_constraintBottom_toBottomOf="parent"
|
|
||||||
app:layout_constraintEnd_toEndOf="parent"
|
|
||||||
app:layout_constraintStart_toStartOf="parent">
|
|
||||||
|
|
||||||
<Button
|
|
||||||
android:id="@+id/btn_on_main"
|
|
||||||
android:layout_width="150dp"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:layout_gravity="center"
|
|
||||||
android:layout_marginLeft="20dp"
|
|
||||||
android:layout_marginRight="20dp"
|
|
||||||
android:layout_weight="1"
|
|
||||||
android:background="@drawable/green_gradient"
|
|
||||||
android:text="на главную"
|
|
||||||
android:textAlignment="center"
|
|
||||||
android:textColor="@color/white" />
|
|
||||||
|
|
||||||
<Button
|
|
||||||
android:id="@+id/btn_save"
|
|
||||||
android:layout_width="150dp"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:layout_gravity="center"
|
|
||||||
android:layout_marginLeft="20dp"
|
|
||||||
android:layout_marginRight="20dp"
|
|
||||||
android:layout_weight="1"
|
|
||||||
android:background="@drawable/green_gradient"
|
|
||||||
android:text="Выбрать"
|
|
||||||
android:textAlignment="center"
|
|
||||||
android:textColor="@color/white" />
|
|
||||||
|
|
||||||
</LinearLayout>
|
|
||||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
|
@ -8,29 +8,26 @@
|
|||||||
tools:context=".MainActivity">
|
tools:context=".MainActivity">
|
||||||
|
|
||||||
<ImageView
|
<ImageView
|
||||||
android:id="@+id/imageView"
|
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
android:scaleType="centerCrop"
|
android:scaleType="centerCrop"
|
||||||
android:src="@drawable/background_imagemain"
|
android:src="@drawable/background_imagemain"
|
||||||
app:layout_constraintBottom_toBottomOf="parent"
|
app:layout_constraintBottom_toBottomOf="parent"
|
||||||
app:layout_constraintEnd_toEndOf="parent"
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
app:layout_constraintHorizontal_bias="0.0"
|
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
app:layout_constraintTop_toTopOf="parent"
|
app:layout_constraintTop_toTopOf="parent" />
|
||||||
app:layout_constraintVertical_bias="0.0" />
|
|
||||||
|
|
||||||
<Button
|
<Button
|
||||||
android:id="@+id/settingsButton"
|
android:id="@+id/settingsButton"
|
||||||
android:layout_width="56dp"
|
android:layout_width="48dp"
|
||||||
android:layout_height="56dp"
|
android:layout_height="48dp"
|
||||||
|
android:background="@drawable/ic_settings"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintTop_toTopOf="parent"
|
||||||
android:layout_marginTop="16dp"
|
android:layout_marginTop="16dp"
|
||||||
android:layout_marginEnd="16dp"
|
android:layout_marginEnd="16dp"
|
||||||
android:background="@android:drawable/ic_menu_info_details"
|
|
||||||
android:backgroundTint="@color/black"
|
|
||||||
android:contentDescription="Настройки"
|
android:contentDescription="Настройки"
|
||||||
app:layout_constraintEnd_toEndOf="parent"
|
android:backgroundTint="@color/black" />
|
||||||
app:layout_constraintTop_toTopOf="parent" />
|
|
||||||
|
|
||||||
<androidx.cardview.widget.CardView
|
<androidx.cardview.widget.CardView
|
||||||
android:id="@+id/startTrainingCardView"
|
android:id="@+id/startTrainingCardView"
|
||||||
@ -96,29 +93,6 @@
|
|||||||
android:background="@android:color/transparent"
|
android:background="@android:color/transparent"
|
||||||
android:text="История тренировок"
|
android:text="История тренировок"
|
||||||
android:textColor="@android:color/white" />
|
android:textColor="@android:color/white" />
|
||||||
|
|
||||||
</androidx.cardview.widget.CardView>
|
|
||||||
|
|
||||||
<androidx.cardview.widget.CardView
|
|
||||||
android:id="@+id/newTemplateCardView1"
|
|
||||||
android:layout_width="350dp"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:layout_marginStart="32dp"
|
|
||||||
android:layout_marginTop="100dp"
|
|
||||||
android:layout_marginEnd="32dp"
|
|
||||||
app:cardBackgroundColor="#80000000"
|
|
||||||
app:cardCornerRadius="8dp"
|
|
||||||
app:layout_constraintEnd_toEndOf="parent"
|
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
|
||||||
app:layout_constraintTop_toBottomOf="@+id/templatesCardView">
|
|
||||||
|
|
||||||
<Button
|
|
||||||
android:id="@+id/btn_exit"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="48dp"
|
|
||||||
android:background="@android:color/transparent"
|
|
||||||
android:text="Закрыть приложение"
|
|
||||||
android:textColor="@android:color/white" />
|
|
||||||
</androidx.cardview.widget.CardView>
|
</androidx.cardview.widget.CardView>
|
||||||
|
|
||||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
@ -1,106 +1,65 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
<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_width="match_parent"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
android:orientation="vertical"
|
android:orientation="vertical"
|
||||||
android:padding="16dp"
|
android:padding="16dp"
|
||||||
android:background="@drawable/background_image2"> <!-- Добавили background -->
|
android:background="@drawable/background_image2"> <!-- Добавили background -->
|
||||||
|
|
||||||
<androidx.constraintlayout.widget.ConstraintLayout
|
<TextView
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:text="Настройки"
|
||||||
|
android:textSize="24sp"
|
||||||
|
android:textStyle="bold"
|
||||||
|
android:layout_marginBottom="16dp"/>
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:text="Таймер для тренировок"
|
||||||
|
android:textSize="18sp"
|
||||||
|
android:layout_marginBottom="8dp"/>
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/versionTextView"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:text="Версия: 1.0"
|
||||||
|
android:layout_marginBottom="16dp"/>
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent">
|
android:layout_height="wrap_content"
|
||||||
|
android:orientation="horizontal"
|
||||||
|
android:gravity="center_vertical"
|
||||||
|
android:layout_marginBottom="8dp">
|
||||||
|
|
||||||
<LinearLayout
|
<TextView
|
||||||
android:id="@+id/about_progr_layout"
|
android:layout_width="0dp"
|
||||||
android:layout_width="match_parent"
|
android:layout_height="wrap_content"
|
||||||
android:layout_height="450dp"
|
android:layout_weight="1"
|
||||||
android:layout_marginTop="35dp"
|
android:text="Темная тема"
|
||||||
android:orientation="vertical"
|
android:textSize="16sp"/>
|
||||||
app:layout_constraintTop_toTopOf="parent"
|
|
||||||
tools:layout_editor_absoluteX="0dp">
|
|
||||||
|
|
||||||
<TextView
|
<Switch
|
||||||
android:layout_width="wrap_content"
|
android:id="@+id/darkModeSwitch"
|
||||||
android:layout_height="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_gravity="center"
|
android:layout_height="wrap_content"/>
|
||||||
android:layout_marginBottom="16dp"
|
|
||||||
android:text="О программе"
|
|
||||||
android:textAlignment="center"
|
|
||||||
android:textSize="24sp"
|
|
||||||
android:textStyle="bold" />
|
|
||||||
|
|
||||||
<TextView
|
</LinearLayout>
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:layout_marginBottom="8dp"
|
|
||||||
android:text="Название приложения: Таймер для тренировок"
|
|
||||||
android:textSize="18sp" />
|
|
||||||
|
|
||||||
<TextView
|
<Button
|
||||||
android:id="@+id/textView7"
|
android:id="@+id/aboutButton"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_marginBottom="8dp"
|
android:text="О программе"
|
||||||
android:text="Данное приложение поможет пользователю в организации своих тренировок."
|
android:layout_marginBottom="8dp"/>
|
||||||
android:textSize="18sp" />
|
|
||||||
|
|
||||||
<TextView
|
<Button
|
||||||
android:id="@+id/textView9"
|
android:id="@+id/developersButton"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_marginBottom="8dp"
|
android:text="Разработчики"/>
|
||||||
android:text="Оно поможет задавать количество подходов и упражнений, устанавливать время работы и отдыха, запускать последние 3 тренировки."
|
|
||||||
android:textSize="18sp" />
|
|
||||||
|
|
||||||
<TextView
|
|
||||||
android:id="@+id/textView12"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:layout_marginBottom="8dp"
|
|
||||||
android:text="Можно задавать как интервалы для всех упражнений, так и для каждого отдельно, добавляя названия упражнений."
|
|
||||||
android:textSize="18sp" />
|
|
||||||
|
|
||||||
<TextView
|
|
||||||
android:id="@+id/versionTextView2"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:layout_marginBottom="16dp"
|
|
||||||
android:text="При возникновении проблем обращаться на почту: stud179277@vyatsu.ru" />
|
|
||||||
|
|
||||||
<TextView
|
|
||||||
android:id="@+id/versionTextView"
|
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:layout_marginBottom="16dp"
|
|
||||||
android:text="Версия: 1.0" />
|
|
||||||
</LinearLayout>
|
|
||||||
|
|
||||||
<LinearLayout
|
|
||||||
android:id="@+id/btn_layout"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="100dp"
|
|
||||||
android:layout_marginBottom="16dp"
|
|
||||||
android:orientation="vertical"
|
|
||||||
app:layout_constraintBottom_toBottomOf="parent"
|
|
||||||
tools:layout_editor_absoluteX="0dp">
|
|
||||||
|
|
||||||
<Button
|
|
||||||
android:id="@+id/developersButton"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:background="@drawable/blue_gradient"
|
|
||||||
android:text="Разработчики" />
|
|
||||||
|
|
||||||
<Button
|
|
||||||
android:id="@+id/btn_on_main"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:layout_marginTop="10dp"
|
|
||||||
android:background="@drawable/blue_gradient"
|
|
||||||
android:text="На главную" />
|
|
||||||
</LinearLayout>
|
|
||||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
|
||||||
|
|
||||||
</LinearLayout>
|
</LinearLayout>
|
@ -69,9 +69,9 @@
|
|||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
android:gravity="center"
|
android:gravity="center"
|
||||||
android:text="Подход № "
|
android:text="Подход №"
|
||||||
android:textAlignment="textEnd"
|
android:textAlignment="textEnd"
|
||||||
android:textColor="@color/black"
|
android:textColor="#D0CBCB"
|
||||||
android:textSize="34sp" />
|
android:textSize="34sp" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
@ -82,7 +82,7 @@
|
|||||||
android:gravity="center"
|
android:gravity="center"
|
||||||
android:text=" 1"
|
android:text=" 1"
|
||||||
android:textAlignment="viewStart"
|
android:textAlignment="viewStart"
|
||||||
android:textColor="@color/black"
|
android:textColor="#D0CBCB"
|
||||||
android:textSize="34sp" />
|
android:textSize="34sp" />
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|
||||||
@ -96,9 +96,9 @@
|
|||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
android:text="Упражнение "
|
android:text="Упражнение"
|
||||||
android:textAlignment="textEnd"
|
android:textAlignment="textEnd"
|
||||||
android:textColor="@color/black"
|
android:textColor="#D0CBCB"
|
||||||
android:textSize="34sp" />
|
android:textSize="34sp" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
@ -108,12 +108,12 @@
|
|||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
android:text=" 1"
|
android:text=" 1"
|
||||||
android:textAlignment="viewStart"
|
android:textAlignment="viewStart"
|
||||||
android:textColor="@color/black"
|
android:textColor="#D0CBCB"
|
||||||
android:textSize="34sp" />
|
android:textSize="34sp" />
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:id="@+id/timerText"
|
android:id="@+id/time"
|
||||||
android:layout_width="163dp"
|
android:layout_width="163dp"
|
||||||
android:layout_height="153dp"
|
android:layout_height="153dp"
|
||||||
android:layout_gravity="center"
|
android:layout_gravity="center"
|
||||||
@ -123,13 +123,13 @@
|
|||||||
android:textSize="60sp" />
|
android:textSize="60sp" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:id="@+id/statusText"
|
android:id="@+id/work"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="70dp"
|
android:layout_height="70dp"
|
||||||
android:gravity="center"
|
android:gravity="center"
|
||||||
android:text="Работа"
|
android:text="Работа"
|
||||||
android:textAlignment="center"
|
android:textAlignment="center"
|
||||||
android:textColor="@color/black"
|
android:textColor="#D0CBCB"
|
||||||
android:textSize="34sp" />
|
android:textSize="34sp" />
|
||||||
|
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
Loading…
Reference in New Issue
Block a user