Перша модифікація APP - Збір подій і даних. - Технологія
Перейти до вмісту

Перша модифікація APP – захоплення подій і даних.

Оголошення

У записі про створення першого проекту на Android ми побачили, як створити нашу базову програму, ми розглянули структуру проекту та різні концепції, такі як SDK, Manifest та дії та їхній життєвий цикл, тепер ми продовжимо модифікацію поточного проекту з метою поглиблення створення додатків.

 

Як згадувалося, ми змінимо програму, створену в цьому записі, де ми створили перший проект Android, ми залишимося там на цьому екрані

Там ми бачимо, що програма за замовчуванням створює компонент TextView з текстом «Hello World» із розділеного перегляду. (Якщо на даний момент ви не знаєте, як створити програму, я рекомендую вам переглянути запис, згаданий вище.)

Перебуваючи тут, ми змінимо це подання, додавши нові компоненти, якщо потім перейдемо до подання креслення, ми зможемо змінити екран на свій смак, у цьому випадку ми створимо наступний інтерфейс.

Як ми бачимо, ми додали компонент PlainText, який фактично відповідає полю редагування або може мати такі властивості, як звичайний текст, пароль, телефон, пошта та інші, так само, як визначений макет дозволяє нам змінювати розмір компоненти та призначте відносну позицію, у цьому випадку текстове поле має позицію відносно textView заголовка.

Якщо ми перейдемо до розділеного перегляду, ми побачимо згенерований код xml, і звідси ми зможемо змінити властивості вручну, у цьому випадку до заголовка додано колір і розмір 25sp, зауважте, що кожен компонент має властивість id , а також властивості для керування розташуванням компонента на екрані.

 

Ми знаходимо інші компоненти, такі як порада що відповідає а placeHolder який відображається, коли поле порожнє, інші властивості можна додати таким же чином, щоб стилізувати компонент.

 

Тепер такий компонент, як який також має властивість id, яка відноситься до компонента текстового поля, у цьому випадку ми змінюємо ідентифікатор.

Логіка програми.

 

Для виконання логічної та інформаційної обробки ми переходимо до класу MainActivity.kt, звідти отримуємо графічні компоненти через їхні id за допомогою методу findViewById().

 

Ми додаємо подію натискання кнопки та створюємо функцію під назвою onClick() (можна викликати будь-яким способом)

 

У цій функції додано логіку для захоплення значення текстового поля, на яке посилаються так само, як на кнопку, але в цьому випадку створюється компонент типу EditText, який посилається на ідентифікатор текстового поля.

 

Згодом значення поля отримується та додається до змінної String, яка потім представляється в компоненті типу Toast, що дозволяє тимчасовому повідомленню відображатися на екрані.

 

Коли ми запускаємо програму, запускається емулятор, і ми можемо перевірити систему, додавши ім’я користувача та натиснувши кнопку «введення», ми бачимо, як відображається Toast, який триває кілька секунд.


Після цього ми змінюємо екран, додаючи інший компонент TextView без тексту, який буде служити для відображення інформації про введене ім’я, але тепер безпосередньо на екрані.

Щоб реалізувати цю логіку, ми повертаємося до класу MainActivity.kt і у функції посилаємося на компонент EditText із призначеним ідентифікатором, а потім надсилаємо повідомлення, яке ми хочемо відобразити.

 

Пізніше ми знову запускаємо додаток і маємо наступний результат.


 

Інша альтернатива збору даних — глобальне оголошення компонентів, таким чином уникаючи необхідності оголошувати їх у кожній функції:


Важливо використовувати!! щоб у вас не було нульових посилань.

 

Спостереження:

 

У рядках 11 і 12 використовується nullsafety, це функція Kotlin, яка дозволяє контролювати нульові значення в програмі, запобігаючи завантаженню популярного NullPointerException, ми не можемо призначити нульові значення безпосередньо, але таким чином, коли ми вказуємо Редагувати текст? ми повідомляємо компілятору, що це поле може мати нульове посилання, і дозволяємо його обробку.

 

у рядках 26 і 27 використовується !! сказати компілятору не перевіряти, чи значення null, і тому він може скомпілювати без будь-яких проблем, але якщо воно null, викинути виняток у консолі, якщо ми знаємо, що нульове значення може надійти, і ми все одно хочемо обробити

 

Іншою рекомендованою альтернативою було б робити безпечні виклики, тому, коли ви намагаєтеся викликати об’єкт, якщо він має значення null, виняток не буде викинуто, але null-значення буде збережено без припинення процесу, тому змінна має мати значення null для він повинен бути правильно скомпільований.

 

І все, на цьому у нас є наша перша функціональна програма зі збором даних і кнопками.

 

Це також може вас зацікавити.





Ви хочете щось додати або прокоментувати до цього запису? не соромтеся робити....І якщо вам сподобалося... Запрошую поділитися Ю Підпишіться, натиснувши кнопку «Приєднатися до цього сайту», щоб почути більше подібних дописів 😉