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


package com.dobryansky.technikum.practice.activities;

import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;

import androidx.appcompat.app.AppCompatActivity;

import com.dobryansky.technikum.practice.R;
import com.dobryansky.technikum.practice.utils.AppConstants;

/**
 * Главный экран приложения.
 * Отвечает за ввод текста и навигацию на информационный экран.
 * 
 * @author Студент группы ИС-21
 */
public class MainActivity extends AppCompatActivity {

    // View-компоненты
    private TextView tvActivityTitle;
    private TextView tvStudentInfo;
    private EditText etUserInput;
    private Button btnClear;
    private Button btnNext;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        
        initializeViews();
        setupStudentInfo();
        setupListeners();
    }

    /**
     * Инициализация всех View-компонентов
     */
    private void initializeViews() {
        tvActivityTitle = findViewById(R.id.tv_activity_title);
        tvStudentInfo = findViewById(R.id.tv_student_info);
        etUserInput = findViewById(R.id.et_user_input);
        btnClear = findViewById(R.id.btn_clear);
        btnNext = findViewById(R.id.btn_next);
    }

    /**
     * Установка информации о студенте
     */
    private void setupStudentInfo() {
        String studentInfo = "Студент: " + AppConstants.STUDENT_NAME + "\n" +
                            "Группа: " + AppConstants.STUDENT_GROUP;
        tvStudentInfo.setText(studentInfo);
    }

    /**
     * Настройка обработчиков событий для кнопок
     */
    private void setupListeners() {
        // Кнопка "Стереть" - очищает поле ввода
        btnClear.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                etUserInput.getText().clear();
                Toast.makeText(MainActivity.this, 
                              "Текст стерт", 
                              Toast.LENGTH_SHORT).show();
            }
        });

        // Кнопка "Next" - переход на информационный экран
        btnNext.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                String userText = etUserInput.getText().toString().trim();
                
                if (userText.isEmpty()) {
                    Toast.makeText(MainActivity.this, 
                                  "Пожалуйста, введите текст", 
                                  Toast.LENGTH_SHORT).show();
                    return;
                }
                
                navigateToInfoActivity(userText);
            }
        });
    }

    /**
     * Переход на информационный экран с передачей данных
     * 
     * @param userText Текст, введенный пользователем
     */
    private void navigateToInfoActivity(String userText) {
        Intent intent = new Intent(MainActivity.this, InfoActivity.class);
        intent.putExtra(AppConstants.EXTRA_USER_TEXT, userText);
        intent.putExtra(AppConstants.EXTRA_PRACTICE_INFO, AppConstants.PRACTICE_INFO);
        startActivity(intent);
    }

    /**
     * Обработка системной кнопки "Назад"
     */
    @Override
    public void onBackPressed() {
        // Просто закрываем приложение
        finish();
    }
}