Similar presentations:
Презентация_9.Обработчики
1. Программирование мобильных устройств
Рена Султангазиева2. Андроид студио
Обработчики событий2
3. Класс MainActivity.java
Класс Activity-родительКласс ресурсов
Xml-файл
3
4. Xml-файл
45. Xml-файл
<?xml version="1.0" encoding="utf-8"?><LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<Button
android:id="@+id/button1"
Id=button1
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:onClick="onClick1"
Alt+Enter
android:text="Button" />
<TextView
android:id="@+id/textView1"
Id=textView1
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="TextView" />
</LinearLayout
5
6. Объявление переменных
Объявление переменныхСозданный обработчик событий - onClick1
private Button button1
Область видимости
переменной
6
Класс
переменной
Имя
переменной
7. Метод findViewById
Поиск элементов по IDКод обработки
Button button1 = (Button)findViewById(R.id.button1)
Класс
ПеременнойНеобязятельый
параметр
7
Имя
переменной
8. Программная установка текста
Text - текст виджетаtextColor - цвет текста
textColor - цвет текста
textDirection – направление текста
fontFamily – тип шрифта
8
textSize - размер шрифта
textBackgroundColor - цвет фона
textAlignment - выравнивание текста
textAllCaps – заглавные буквы
9. Программная установка текста
910. Метод setOnClickListener()
Метод setOnClickListener()<Button
android:id="@+id/button2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Button" />
<TextView
android:id="@+id/textView2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="TextView" />
10
11. Метод setOnClickListener()
Метод setOnClickListener()Объявили новые
переменные
Идентифицировали
переменные
11
12. Метод setOnClickListener()
Метод setOnClickListener()button2.setOnClickListener(new O)
12
13. Метод setOnClickListener()
Метод setOnClickListener()13
14. Интерфейс OnClickListener()
Интерфейс OnClickListener()<Button
android:id="@+id/button3"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Button" />
<TextView
android:id="@+id/textView3"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="TextView" />
14
15. Интерфейс OnClickListener()
Интерфейс OnClickListener()implements View.OnClickListener
15
16. Интерфейс OnClickListener()
Интерфейс OnClickListener()Alt+Enter
16
17. Интерфейс OnClickListener()
Интерфейс OnClickListener()Назначим обработчик
кнопки 3
Код кнопки 3
17
18. Интерфейс OnClickListener()
Интерфейс OnClickListener()18
19. Ввод текста
Ввод текста<LinearLayout
xmlns:android="http://schemas.android.com/a
pk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:padding="16dp">
<EditText
android:id="@+id/editTextName"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Введите имя"
android:inputType="textPersonName" />
19
<EditText
android:id="@+id/editTextPassword"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Введите пароль"
android:inputType="textPassword" />
</LinearLayout>
· android:hint — подсказка в поле.
· android:inputType — тип ввода (текст,
пароль, email, число и т.д.)
20. Ввод текста
Ввод текстаpublic class MainActivity extends
AppCompatActivity {
EditText editTextName, editTextPassword;
@Override
protected void onCreate(Bundle
savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// Связываем переменные с
элементами XML
editTextName =
findViewById(R.id.editTextName);
editTextPassword =
findViewById(R.id.editTextPassword);
}
}
20
Получение текста из EditText
String name =
editTextName.getText().toString();
String password =
editTextPassword.getText().toString();
21. Ввод текста
Ввод текстаОбработка событий:
Button btnSubmit = findViewById(R.id.btnSubmit);
btnSubmit.setOnClickListener(v -> {
String name = editTextName.getText().toString();
String password = editTextPassword.getText().toString();
Toast.makeText(MainActivity.this, "Имя: " + name + "\nПароль: " + password,
Toast.LENGTH_SHORT).show();
});
Integer.parseInt() → для целых чисел (int).
Double.parseDouble() → для чисел с плавающей точкой (double).
Проверка пустого ввода — всегда нужно проверять input.isEmpty()
Обработка ошибок — если пользователь ввёл не число, можно использовать try/catch
try {
int number = Integer.parseInt(input);
} catch (NumberFormatException e) {
Toast.makeText(MainActivity.this, "Неверный формат числа!", Toast.LENGTH_SHORT).show();
}
21
22. Ввод текста
Ввод текстаЗадание: Разработать приложение –решение квадратного уравнения с
вводом коэффициентов, выводом результатов и выводом дискриминанта во
всплывающем сообщении.
Предусмотреть ошибки и исключительные ситуации.
22