Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import android.Manifest
- import android.content.Intent
- import android.content.pm.PackageManager
- import android.net.Uri
- import android.os.Bundle
- import android.widget.Button
- import android.widget.EditText
- import androidx.appcompat.app.AlertDialog
- import androidx.appcompat.app.AppCompatActivity
- import androidx.core.app.ActivityCompat
- import androidx.core.content.ContextCompat
- class MainActivity : AppCompatActivity() {
- // Дефинирайте код за извикване на телефонното приложение
- private val CALL_PHONE_PERMISSION_REQUEST_CODE = 123
- override fun onCreate(savedInstanceState: Bundle?) {
- super.onCreate(savedInstanceState)
- setContentView(R.layout.activity_main)
- // Свързване на бутон от XML с кода
- val myButton = findViewById<Button>(R.id.myButtonId)
- myButton.setOnClickListener {
- // Действия при натискане на бутона
- val intent = Intent(this, BloodSugarActivity::class.java)
- startActivity(intent)
- }
- val enterBloodSugarButton = findViewById<Button>(R.id.enterBloodSugarButton)
- enterBloodSugarButton.setOnClickListener {
- // Отваряне на активитет за въвеждане на стойността на кръвната захар
- val intent = Intent(this, EnterBloodSugarActivity::class.java)
- startActivity(intent)
- }
- val viewDailyMonitoringButton = findViewById<Button>(R.id.viewDailyMonitoringButton)
- viewDailyMonitoringButton.setOnClickListener {
- // Отваряне на активитет за преглед на мониторинг на кръвната захар за деня
- val intent = Intent(this, DailyMonitoringActivity::class.java)
- startActivity(intent)
- }
- val emergencyButton = findViewById<Button>(R.id.emergencyButton)
- emergencyButton.setOnClickListener {
- // Проверка и извикване на функцията за звънене при спешни случаи
- if (checkCallPhonePermission()) {
- callEmergencyNumber()
- }
- }
- }
- // Функция за проверка на разрешението за звънене
- private fun checkCallPhonePermission(): Boolean {
- if (ContextCompat.checkSelfPermission(
- this,
- Manifest.permission.CALL_PHONE
- ) != PackageManager.PERMISSION_GRANTED
- ) {
- ActivityCompat.requestPermissions(
- this,
- arrayOf(Manifest.permission.CALL_PHONE),
- CALL_PHONE_PERMISSION_REQUEST_CODE
- )
- return false
- }
- return true
- }
- // Функция за извикване на телефонното приложение и звънене на спешния номер
- private fun callEmergencyNumber() {
- val intent = Intent(Intent.ACTION_CALL)
- intent.data = Uri.parse("tel:112")
- startActivity(intent)
- }
- // Обработка на резултата от заявката за разрешение
- override fun onRequestPermissionsResult(
- requestCode: Int,
- permissions: Array<out String>,
- grantResults: IntArray
- ) {
- if (requestCode == CALL_PHONE_PERMISSION_REQUEST_CODE) {
- if (grantResults.isNotEmpty() && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
- // Разрешението е дадено, можем да извикаме номера
- callEmergencyNumber()
- }
- }
- }
- }
- class EnterBloodSugarActivity : AppCompatActivity() {
- override fun onCreate(savedInstanceState: Bundle?) {
- super.onCreate(savedInstanceState)
- setContentView(R.layout.activity_enter_blood_sugar)
- // Свързване на EditText за въвеждане на стойността на кръвната захар
- val bloodSugarEditText = findViewById<EditText>(R.id.bloodSugarEditText)
- val submitButton = findViewById<Button>(R.id.submitButton)
- submitButton.setOnClickListener {
- val bloodSugarValue = bloodSugarEditText.text.toString().toDoubleOrNull()
- if (bloodSugarValue != null) {
- if (bloodSugarValue > 4.5) {
- // Показване на съобщение за висока кръвна захар
- showHighBloodSugarMessage()
- }
- // Записване на данните или друга обработка
- } else {
- // Невалидна стойност, направете обработка на този случай
- }
- }
- }
- private fun showHighBloodSugarMessage() {
- // Използване на AlertDialog за показване на съобщение
- val alertDialog = AlertDialog.Builder(this)
- .setTitle("Висока кръвна захар")
- .setMessage("Стойността на кръвната захар е над 4.5. Моля, обърнете се към лекаря си.")
- .setPositiveButton("OK") { dialog, _ ->
- dialog.dismiss()
- }
- .create()
- alertDialog.show()
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement