package com.example.timert import android.content.Context import android.content.pm.PackageManager import android.os.Bundle import android.widget.Switch import android.widget.TextView import androidx.appcompat.app.AppCompatActivity import androidx.appcompat.app.AppCompatDelegate import android.widget.Button import androidx.appcompat.app.AlertDialog import androidx.core.text.HtmlCompat class SettingsActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) 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) // Получаем сохраненное состояние темы из 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 { AlertDialog.Builder(this) .setTitle("Разработчики") .setMessage(HtmlCompat.fromHtml( "

Вятский государственный университет


" + "

Емцова Надежда Александровна

" + "

Новиков Николай Алексеевич

" + "

Пискун Алёна Викторовна

", HtmlCompat.FROM_HTML_MODE_LEGACY )) .setPositiveButton("ОК", null) .show() } } }