From 839fd99136c13a1e2d38d88b12ed3f36cd8ee8e2 Mon Sep 17 00:00:00 2001 From: StNicolay Date: Sun, 3 Dec 2023 14:53:17 +0300 Subject: [PATCH] Java 03.12.2023 --- Java/Java.md | 62 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 62 insertions(+) diff --git a/Java/Java.md b/Java/Java.md index 5c9ce8a..fe252e9 100644 --- a/Java/Java.md +++ b/Java/Java.md @@ -1052,3 +1052,65 @@ UUID id = UUID.randomUUID(); ### *StringTokenizer* > *StringTokenizer* нужен для разделения строк на токены, используя данный разделитель (по умолчанию пробел) + +## Android Studio + +### Устройство платформы Android + +* Базовый уровень (Linux Kernel) - firmware +* Библиотеки и среда исполнения (Libraries & Android Runtime) +* Каркас приложений (Application Framework) +* Уровень приложений (Applications) + +### Комплекты разработчика + +* JDK (Java Development Kit) - комплект разработчика на Java. Включает компилятор, библиотеки, примеры, документацию, утилиты и исполнительную среду +* SDK (Software Development Kit) - утилиты для создания и тестирования приложений +* SDK Manager - инструмент для заргузки компонентов Android SDK +* Android Emulator - эмулирует телефон на компьютере +* AVD Manager - графический интерфейс для создания виртуальных Android устройст +* Android Debig Bridge - управление состоянием эмулятора или реального устройства, подключённого к компьютеру + +### Структура Android приложения + +* *Gen* файлы генерируются Java. Являются обязательным компонентом +* *AndroidManifest.xml* - файл манифеста предоставляет системе лсновную информацию о программе +* *Src* - каталог с исходным компонентом +* *Assets* - произвольное собрание каталогов и файлов +* *Res* - катагол с ресурсами прилодения. Там подкапки drawable, anum, layout, menu, values, xml и raw + +### Инициализация объектов Activity + +```Java +package com.example.myapplication; + +import androidx.appcompat.app.AppCompatActivity; + +import android.graphics.Color; +import android.os.Bundle; +import android.view.View; + +import com.example.myapplication.databinding.ActivityMainBinding; + +public class MainActivity extends AppCompatActivity { + private ActivityMainBinding binding; + int counter = 0; + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + binding = ActivityMainBinding.inflate(getLayoutInflater()); + View view = binding.getRoot(); + setContentView(view); + + binding.textView.setText("0"); + binding.textView.setTextSize(33); + binding.textView.setTextColor(Color.RED); + + binding.button.setOnClickListener((foo) -> { + counter += 1; + binding.textView.setText(String.valueOf(counter)); + }); + } +} +```