Объясните почему кнопки Работают?

 
 
 
Сообщения:1
package com.example.writeandread;

import androidx.appcompat.app.AppCompatActivity;
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 java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;

public class MainActivity extends AppCompatActivity {

    private EditText edit;
    private TextView txtShow;
//    private Button btn1, btn2;

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

//        btn1 = (Button)findViewById(R.id.button);
//        btn2 = (Button)findViewById(R.id.button2);
        edit = (EditText)findViewById(R.id.editText);
        txtShow = (TextView)findViewById(R.id.textView);
    }

    public void read (View view){
        try {
            FileInputStream fileInput = openFileInput("example.txt");
            InputStreamReader reader = new InputStreamReader(fileInput);
            BufferedReader buffer = new BufferedReader(reader);
            StringBuffer strBuffer = new StringBuffer();
            String lines;
            while ((lines = buffer.readLine()) != null){
                strBuffer.append(lines + "\n");
            }
            txtShow.setText(strBuffer.toString());

        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }

    }

    public void write (View view){
        String myTxt = edit.getText().toString();
        try {
            FileOutputStream fileOutput = openFileOutput("example.txt", MODE_PRIVATE);
            fileOutput.write(myTxt.getBytes());
            fileOutput.close();
            edit.setText("");
            Toast.makeText(MainActivity.this, "Текст сохранен", Toast.LENGTH_LONG).show();
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

Смотрю видеоурок на тему считывания и записи введеного текста в файл на устройство (https://www.youtube.com/watch?v=l3DR9PjyIYw&list=PL0lO_mIqDDFW13-lP3IgK9lZoM1M-oPl4&index=15&t=0s).

Так вот вопрос, почему добавленные мною кнопки в режиме "дизайн" в AndroidStudio РАБОТАЮТ без подключения соответствующей библиотеки - "Button"(я ее закомментировал) и к тому же без подключения функции прослушивания нажатий кнопок setOnClickListener?

 
 
Сообщения:34
Потому что в активити ты получаешь доступ к кнопке, к самому объекту. В XML ты всего лишь верстаешь дизайн который потом парситься андроидом.
 
Модераторы:demon_zxBeowulf13thShogun
Сейчас эту тему просматривают:Нет