Разработка мобильных приложений
https://fondstanina.org/olympiad2022
Стартовое окно программы android studio
Выбор шаблона активити
Конфигурация проекта
Окно программы android studio
Окно программы android studio
Окно программы android studio
Окно программы android studio
Окно программы android studio
Выбор шаблона активити
Конфигурация проекта
Создание виртуального устройства
Выбор образа операционной системы
Запуск приложения на эмуляторе
Содержимое файла mobile_navigation.xml
Результат нажатия кнопки New destination
Добавление фрагмента
Выбор команды refactor
Переименование идентификаторов
Переименование меток
Добавление строковых ресурсов
Содержимое файла bottom_nav_menu.xml
Содержимое файла homefragment.java
Содержимое файла fragment_HOME.XML
Выбор изображения с помощью вкладки design
Пример экрана приложения
Добавление атрибутов для textview
Выбор шрифта для textview
Пример экрана «моя работа»
Добавление атрибутов для button
Выбор цвета для кнопок
Пример экрана «контакты»
Требования к оформлению отчёта
Надпись (TextView)
Текстовое поле (EditText)
Кнопка (Button)
Вывод изображений на кнопках (Button)
Двухпозиционная кнопка (ToggleButton)
Переключатель(Switch)
Флажки (CheckBox)
Переключатели (RadioButton)
Раскрывающийся список (Spinner)
Графическое представление (ImageView)
Графическая кнопка (ImageButton)
Прокручиваемые представления (ScrollView)
Уведомления (Toast)
22.93M
Категория: ПрограммированиеПрограммирование

Android Studio (Тонких Артём Петрович)

1. Разработка мобильных приложений

федеральное государственное бюджетное образовательное учреждение
высшего образования
«ТОЛЬЯТТИНСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ»
Разработка мобильных
приложений
Тонких Артём Петрович
старший преподаватель кафедры
«Прикладная математика и информатика»
© ТГУ, 2022

2. https://fondstanina.org/olympiad2022

3. Стартовое окно программы android studio

СТАРТОВОЕ ОКНО ПРОГРАММЫ ANDROID STUDIO

4. Выбор шаблона активити

ВЫБОР ШАБЛОНА АКТИВИТИ

5. Конфигурация проекта

КОНФИГУРАЦИЯ ПРОЕКТА

6. Окно программы android studio

ОКНО ПРОГРАММЫ ANDROID STUDIO

7. Окно программы android studio

ОКНО ПРОГРАММЫ ANDROID STUDIO

8. Окно программы android studio

ОКНО ПРОГРАММЫ ANDROID STUDIO

9. Окно программы android studio

ОКНО ПРОГРАММЫ ANDROID STUDIO

10. Окно программы android studio

ОКНО ПРОГРАММЫ ANDROID STUDIO

11.

12.

13.

14.

15.

16.

17.

18.

19.

20.

21.

22.

23.

24.

25.

26.

27.

28.

29.

30.

31.

32.

33.

34.

35.

36.

37.

38. Выбор шаблона активити

ВЫБОР ШАБЛОНА АКТИВИТИ

39. Конфигурация проекта

КОНФИГУРАЦИЯ ПРОЕКТА

40. Создание виртуального устройства

СОЗДАНИЕ ВИРТУАЛЬНОГО УСТРОЙСТВА

41. Выбор образа операционной системы

ВЫБОР ОБРАЗА ОПЕРАЦИОННОЙ СИСТЕМЫ

42. Запуск приложения на эмуляторе

ЗАПУСК ПРИЛОЖЕНИЯ НА ЭМУЛЯТОРЕ

43. Содержимое файла mobile_navigation.xml

СОДЕРЖИМОЕ ФАЙЛА MOBILE_NAVIGATION.XML

44. Результат нажатия кнопки New destination

РЕЗУЛЬТАТ НАЖАТИЯ КНОПКИ NEW DESTINATION

45. Добавление фрагмента

ДОБАВЛЕНИЕ ФРАГМЕНТА

46. Выбор команды refactor

ВЫБОР КОМАНДЫ REFACTOR

47. Переименование идентификаторов

ПЕРЕИМЕНОВАНИЕ ИДЕНТИФИКАТОРОВ

48. Переименование меток

ПЕРЕИМЕНОВАНИЕ МЕТОК

49. Добавление строковых ресурсов

ДОБАВЛЕНИЕ СТРОКОВЫХ РЕСУРСОВ

50. Содержимое файла bottom_nav_menu.xml

СОДЕРЖИМОЕ ФАЙЛА BOTTOM_NAV_MENU.XML

51. Содержимое файла homefragment.java

СОДЕРЖИМОЕ ФАЙЛА HOMEFRAGMENT.JAVA

52. Содержимое файла fragment_HOME.XML

СОДЕРЖИМОЕ ФАЙЛА FRAGMENT_HOME.XML

53. Выбор изображения с помощью вкладки design

ВЫБОР ИЗОБРАЖЕНИЯ С ПОМОЩЬЮ ВКЛАДКИ DESIGN

54. Пример экрана приложения

ПРИМЕР ЭКРАНА ПРИЛОЖЕНИЯ

55. Добавление атрибутов для textview

ДОБАВЛЕНИЕ АТРИБУТОВ ДЛЯ TEXTVIEW

56. Выбор шрифта для textview

ВЫБОР ШРИФТА ДЛЯ TEXTVIEW

57. Пример экрана «моя работа»

ПРИМЕР ЭКРАНА «МОЯ РАБОТА»

58. Добавление атрибутов для button

ДОБАВЛЕНИЕ АТРИБУТОВ ДЛЯ BUTTON

59. Выбор цвета для кнопок

ВЫБОР ЦВЕТА ДЛЯ КНОПОК

60. Пример экрана «контакты»

ПРИМЕР ЭКРАНА «КОНТАКТЫ»

61. Требования к оформлению отчёта

ТРЕБОВАНИЯ К ОФОРМЛЕНИЮ ОТЧЁТА
Отчёт по практическому заданию должен содержать:
подробное пошаговое описание выполнения задания со скриншотами и
пояснениями
скриншоты всех страниц приложения
код xml-файлов графического представления приложения
код java-файлов приложения
zip-архив с приложением.
Для создания архива скопируйте ваш проект в новую папку, в которой
удалите подпапки .gradle, .idea, build, app/build. Запакуйте уже очищенную
новую папку с проектом.

62.

Подключить телефон - https://developer.android.com/studio/run/device

63.

Material Design https://material.io/
design/introductio
n/#principles

64.

dp https://material.io/desig
n/layout/understandinglayout.html#pixeldensity

65.

66.

67.

sp https://material.io/
design/typography
/#type-scale

68.

69.

70.

71.

72.

73.

74.

75.

76.

77.

78.

79.

80.

81.

82.

83.

color https://material
.io/design/color
/#

84.

85.

86.

87.

88.

89.

90.

91.

92.

93.

94.

95.

96.

https://developer.android.com/guide/topics
/ui/layout/linear

97.

98.

99.

100.

101.

102.

103.

104.

105.

106.

107.

108.

109.

110.

111.

112.

113.

114.

115.

116.

117.

118.

119.

120.

https://developer.android.com/guide/topics/ui/layout/relative.html
https://developer.android.com/training/constraintlayout/index.html
https://developer.android.com/guide/topics/ui/layout/gridview
https://developer.android.com/guide/topics/ui/layout/listview
https://developer.android.com/guide/topics/ui/layout/recyclervie
w
https://github.com/google/flexbox-layout

121.

122.

123.

124.

125.

126.

127.

128.

129.

130.

131.

132.

133.

134.

135.

136.

137.

138.

139.

140.

141.

142.

143.

144.

145. Надпись (TextView)

Используется для вывода текста.
•Для изменения размера используется атрибут android:textSize:
android:textSize="14sp"
•Определение в XML
<TextView
android:id="@+id/textview" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:text="@string/text" />
•Использование надписи в коде активности TextView tV =
(TextView) findViewById(R.id.textview); textView.setText("Some other
string");

146. Текстовое поле (EditText)

Аналог надписи, но с возможностью редактирования.
•Определение в XML
<EditText
android:id="@+id/edit_text" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:hint="@string/edit_text"
/>
•Атрибут android:inputType="number"
phone - предоставляет клавиатуру для ввода номеров.
textPassword - предоставляет клавиатуру для ввода пароля.
textCapSentences - первое слово начинается с прописной буквы.
textAutoCorrect - автоматически исправляет вводимый текст.
•Использование в коде активности
EditText editText = (EditText) findViewById(R.id.edit_text); String text =
editText.getText().toString();

147. Кнопка (Button)

• Определение в XML
<Button android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/button_text" />
• Использование в коде активности
android:onClick="onButtonClicked"
Затем в активности определяется метод следующего вида:
/** Вызывается при щелчке на кнопке */ public void
onButtonClicked(View view) {
// Сделать что-то по щелчку на кнопке
}

148. Вывод изображений на кнопках (Button)

• Вывод текста и изображения на кнопке
Вывести графический ресурс android в правой части кнопки.
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:drawableRight="@drawable/android"
android:text="@string/click_me" />
Чтобы изображение располагалось слева от текста, воспользуйтесь
атрибутом android:drawableLeft:
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:drawableLeft="@drawable/android"
android:text="@string/click_me" />

149. Двухпозиционная кнопка (ToggleButton)

Щелкая на двухпозиционной кнопке, пользователь выбирает одно из двух состояний.
•Определение в XML
<ToggleButton android:layout_width="wrap_content" android:layout_height="wrap_content"
android:textOn="@string/on" android:textOff="@string/off" />
•Использование в коде активности
android:onClick="onToggleButtonClicked"
Затем в активности определяется метод следующего вида:
/** Вызывается при щелчке на двухпозиционной кнопке*/ public void onToggleClicked(View view) {
// Получить состояние двухпозиционной кнопки. boolean on = ((ToggleButton) view).isChecked();
if (on) {
// Вкл
} else {
// Выкл
}
}

150. Переключатель(Switch)

Выключатель представляет собой рычажок, который работает по
тому же принципу, что и двухпозиционная кнопка.
•Определение в XML
<Switch
android:layout_width="wrap_content" android:layout_height="wrap_content"
android:textOn="@string/on" android:textOff="@string/off" />
•Использование в коде активности
android:onClick="onSwitchClicked"
Затем в активности определяется метод следующего вида:
/** Вызывается при щелчке на выключателе. */ public void onSwitchClicked(View view) {
// Включенное состояние?
boolean on = ((Switch) view).isChecked(); if (on) {
// Вкл
} else {
// Выкл
}
}

151. Флажки (CheckBox)

Флажки (check boxes) предоставляют пользователю набор независимых вариантов.
Каждый флажок может устанавливаться или сниматься независимо от всех остальных
флажков.
•Определение в XML
<CheckBox

android:text="@string/content1" />
<CheckBox

android:text="@string/content2" />
•Использование в коде активности
CheckBox cb = (CheckBox) findViewById(R.id.check); boolean checked = checkbox.isChecked();
if (checked) {
//Действия для установленного флажка
}

152. Переключатели (RadioButton)

Переключател
и (RadioButton)
Переключатели предоставляют набор вариантов, из которого
пользователь может выбрать ровно один вариант:
•Определение в XML
<RadioGroup android:id="@+id/radio_group" android:layout_width="match_parent"
android:layout_height="wrap_content" android:orientation="vertical">
<RadioButton android:id="@+id/radio_circle" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:text="@string/circle" />
<RadioButton android:id="@+id/radio_square"
android:layout_width="wrap_content" android:layout_height="wrap_content"
android:text="@string/square" />
</RadioGroup>

153. Раскрывающийся список (Spinner)

Раскрывающийся список содержит набор значений, из
которых
пользователь может выбрать только одно.
Определение в XML
<Spinner
android:id="@+id/spinner" android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:entries="@array/spinner_values" />
Массив строк добавляется в файл strings.xml :
<string-array name="spinner_values">
<item>New Delphi</item>
<item>Haryana</item>
<item>Bihar/item>
<item>Guijrat</item>
</string-array>
Использование в коде активности
Spinner spinner = (Spinner) findViewById(R.id.spinner); String string =
String.valueOf(spinner.getSelectedItem());

154. Графическое представление (ImageView)

• Определение в XML макета
<ImageView android:layout_width="200dp" android:layout_height="100dp"
android:src="@drawable/logo"
android:contentDescription="@string/logo" />
Ресурсы изображений снабжаются префиксом @drawable, который сообщает
Android, что ресурс изображения хранится в одной или нескольких папках
drawable.
• Использование в коде активности
ImageView photo = (ImageView)findViewById(R.id.photo); int image =
R.drawable.logo;
String description = "This is the logo"; photo.setImageResource(image);
photo.setContentDescription(description);

155. Графическая кнопка (ImageButton)

Графическая кнопка почти не отличается от обычной — просто на ней выводится только изображение,
без текста.
•Определение в XML
<ImageButton android:id="@+id/button"
android:layout_width="wrap_content" android:layout_height="wrap_content"
android:src="@drawable/button_icon />
•Использование в коде активности
android:onClick="onButtonClicked"
Затем в активности определяется метод следующего вида:
/** Вызывается при щелчке на кнопке */ public void onButtonClicked(View view) {
// Сделать что-то по щелчку на кнопке
}

156. Прокручиваемые представления (ScrollView)

•Чтобы добавить вертикальную полосу прокрутки, заключите существующий макет в элемент
<ScrollView>:
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity" >
<LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="16dp"
android:paddingLeft="16dp" android:paddingRight="16dp" android:paddingTop="16dp" android:orientation="vertical" >
...
</LinearLayout>
<ScrollView
•Чтобы добавить в макет горизонтальную полосу прокрутки, заключите существующий макет в
элемент <HorizontalScrollView>.

157. Уведомления (Toast)

Уведомления выполняют чисто информационные функции,
пользователь не может с ними взаимодействовать. Пока
уведомление находится на экране, активность остается
видимой и доступной для взаимодействия с пользователем.
Уведомление автоматически закрывается по истечении
тайм-аута.
•Использование в коде активности:
1.Уведомления создаются только в коде активности;
2.Определить их в макете невозможно.
CharSequence text = "Hello, I'm a Toast!"; int duration =
Toast.LENGTH_SHORT;
Toast toast = Toast.makeText(this, text, duration); toast.show();
English     Русский Правила