Загрузка данных


[Пересланное сообщение]
  Diyorbek Bazarov, 15 октября в 14:17
  package com.example.myapplication
  
  import android.os.Bundle
  import android.text.Editable
  import android.text.TextWatcher
  import android.widget.EditText
  import android.widget.ImageView
  import android.widget.TextView
  import androidx.activity.enableEdgeToEdge
  import androidx.appcompat.app.AppCompatActivity
  import androidx.core.view.ViewCompat
  import androidx.core.view.WindowInsetsCompat
  
  class MainActivity : AppCompatActivity() {
      override fun onCreate(savedInstanceState: Bundle?) {
          super.onCreate(savedInstanceState)
          enableEdgeToEdge()
          setContentView(R.layout.activity_main)
          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
          }
  
          // ===== НАШ КОД НАЧИНАЕТСЯ ЗДЕСЬ =====
  
          // 1. Находим элементы на экране по их ID
          val textView = findViewById<TextView>(R.id.textView)         // верхний текст
          val editText = findViewById<EditText>(R.id.editTextText)     // нижнее поле ввода
          val imageView = findViewById<ImageView>(R.id.imageView)      // картинка
  
          // 2. Вешаем "слушателя" на поле ввода
          //    Он срабатывает каждый раз, когда вы печатаете или стираете букву
          editText.addTextChangedListener(object : TextWatcher {
              override fun beforeTextChanged(s: CharSequence?, start: Int, count: Int, after: Int) {
                  // ничего не делаем
              }
  
              override fun onTextChanged(s: CharSequence?, start: Int, before: Int, count: Int) {
                  // Берём то, что написано снизу, и сразу показываем сверху
                  if (s.isNullOrEmpty()) {
                      textView.text = "Hello, friend!"   // если поле пустое
                  } else {
                      textView.text = s                   // дублируем введённый текст
                  }
              }
  
              override fun afterTextChanged(s: Editable?) {
                  // ничего не делаем
              }
          })
      }
  }