Как сделать кнопку невидимой android studio

Обновлено: 07.07.2024

Итак, в прошлый раз мы создали первое приложение для андроид, используя AndroidStudio, наше приложение получилось проще некуда, в поле для ввода пишем текст, при нажатии на кнопку BUTTON это текст попадал в текстовое поле, меняя тем самым надпись.

Проще только форма с кнопкой закрыть приложение, кстати, а как изменить текст на кнопке спросите вы? Очень просто, аж двумя способами, не считая программного…

Первый способ изменить текст на кнопке - hardcore

Откроем файл main.xml, и в свойствах элемента Button - android:text="Button" в скобках напишем "Нажми меня!", перейдем в Design вид и надпись на кнопке поменяется. Хотя это считается хардкором и вообще дурным тоном.

Второй способ изменить текст на кнопке - strings.xml

Слева в инспекторе проекта по путь res/values/ откроем файл strings.xml (строки), добавим новую строку либо скопировав предыдущую, либо набрав вручную либо нажав комбинацию клавиш ctrl+D, продублировав верхнюю строку. Поменяем свойство name на любое на английском, и главное имя должно быть уникальное, иначе получите предупреждение об ошибке, я написал "my_button".

Между скобками тот же текст "Нажми меня!", сохранили и закрыли. Теперь в main.xml свойство текст у кнопки в скобках напишем "@string/my_button", система сама вам поможет при вводе текста, и предложит в раскрывающемся списке содержимое файла strings.xml.

Перейдем снова с дизайнерский вид и увидим что текст изменился. Далее у поля ввода текста EditText оставим значение text пустым, что бы надпись Name не появлялась при запуске приложения.

Новая кнопка - "Очистить"

Добавим перетаскиванием на форму еще одну кнопку, в файле strings.xml добавим еще одну текстовую строчку и именем "my_button2" и значением "Очистить".

Создадим переменную b2 типа Button и найдем ее по id через findviewById(R.id.button2), в main.xml button2 это id новой кнопки.

Как написать обработчик нажатия на кнопку

Напишем обработчик нажатия на кнопку b2, при этом переменная ed связанная с текстовым полем и txt наша надпись получат через функцию setText() текст "" (пустые скобки).

Проверим, запустив приложение, введем текст, нажмем на кнопку "Нажми меня!" затем на кнопку "Очистить", все работает.

Теперь добавим ниже второй кнопки еще одну, она нужна будет для закрытия приложения, снова в strings.xml добавим строку, нажав ctrl+D, с именем "my_button3"и текстом "Выход", сохраним и закроем.

В файле main.xml для id button3 в свойстве text пропишем "@string/my_button3".

Снова создадим переменную типа button b3, свяжем ее через id используя findViewById(R.id.button3), и напишем еще один обработчик нажатия на кнопку с одной функцией finish().

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

Как можно догадаться из названия finish он и в Африке финиш, при нажатии на эту кнопку наше приложение будет закрыто.

Android приложение за 5 минут. Часть 2

Запустим приложение и проверим, как все работает. Текст добавляется, затем очищается, и форма закрывается, как и было задумано.

Полный текст main.xml

Полный текст MainActivity.java

Полный текст strings.xml

Как создать андроид приложение за 5 минут (Продолжение):

Рекомендуем смотреть видео в полноэкранном режиме, в настойках качества выбирайте 1080 HD, не забывайте подписываться на канал в YouTube, там Вы найдете много интересного видео, которое выходит достаточно часто. Приятного просмотра!

В этой статье мы научимся использовать виджет Button в Android. Также здесь рассказывается о том, как обрабатывать нажатия, применять стили, работать с xml-макетом кнопки, а также управлять виджетом Button в коде. Урок будет полезен для начинающих андроид-программистов.

Сегодня мы узнаем как задавать различные расположение для кнопок, менять фоновые изображения и обрабатывать события, связанные с виджетом Button .

Создаем кнопку в Android

Кнопка представляет собой кликабельный Android виджет, который может принимать различные формы и реагировать на действия пользователя, а именно: обычное нажатие, длительное нажатие и т.д. Виджет Button доступен в пакете android.widget.Button .

Как и любой другой виджет, вы можете объявить Button в макете вашей активности или фрагмента, также создать кнопку программно.

В layout-файл main.xml напишем следующее и сохраним:

Открываем MainActivity.java. Описание объектов вынесем за пределы метода onCreate. Это сделано для того, чтобы мы могли из любого метода обращаться к ним. В onCreate мы эти объекты заполним с помощью уже пройденного нами метода findViewById. В итоге должен получиться такой код:

Обновляем секцию import (CTRL+SHIFT+O). Объекты tvOut, btnOk и btnCancel соответствуют View-элементам экрана и мы можем с ними работать. Нам надо научить кнопку реагировать на нажатие. Для этого у кнопки есть метод setOnClickListener (View.OnClickListener l). На вход подается объект с интерфейсом View.OnClickListener. Именно этому объекту кнопка поручит обрабатывать нажатия. Давайте создадим такой объект. Код продолжаем писать в onCreate:

Eclipse подчеркивает OnClickListener красной линией


т.к. пока не знает его. Необходимо обновить секцию import. Жмем CTRL+SHIFT+O, Eclipse показывает нам, что он знает два интерфейса с именем onClickListener и предлагает выбрать. Нам нужен View.OnClickListener, т.к. метод кнопки setOnClickListener принимает на вход именно его.


В методе onClick пишем:

В итоге должен получится такой код:

Все сохраняем и запускаем. Жмем на кнопку ОК и видим. Что текст изменился


Нажатие на Cancel пока ни к чему не приводит, т.к. для нее мы обработчик не создали и не присвоили. Давайте сделаем это аналогично, как для кнопки OK. Сначала мы создаем обработчик:

Потом присваиваем его кнопке:

Сохраняем, запускаем, проверяем. Обе кнопки теперь умеют обрабатывать нажатия.

Давайте еще раз проговорим механизм обработки событий на примере нажатия кнопки. Сама кнопка обрабатывать нажатия не умеет, ей нужен обработчик (его также называют слушателем - listener), который присваивается с помощью метода setOnClickListener. Когда на кнопку нажимают, обработчик реагирует и выполняет код из метода onClick. Это можно изобразить так:


Соответственно для реализации необходимо выполнить следующие шаги:

- создаем обработчик
- заполняем метод onClick
- присваиваем обработчик кнопке

и система обработки событий готова.

На следующем уроке:

- научимся использовать один обработчик для нескольких View-элементов
- научим Activity выступать в качестве обработчика

- в чатах решаем возникающие вопросы и проблемы по различным темам: Android, Kotlin, RxJava, Dagger, Тестирование

- ну и если просто хочется поговорить с коллегами по разработке, то есть чат Флудильня

- новый чат Performance для обсуждения проблем производительности и для ваших пожеланий по содержанию курса по этой теме

Рассказываем о 50 хитростях, горячих клавишах, плагинах и полезных ссылках для Android Studio и Intellij IDEA, которые помогут разработчику быть более продуктивным.

1. Цветовая схема в material-цветах для консоли

Material colors

Например, цвета как на картинке выше:

2. Предотвращение очистки консоли при падении приложения

Перейдите на панель Android Monitor и выберите Edit filter configuration в выпадающем списке справа.

3. Устанавливаем правильное оформление кода для Android Studio/IntelliJ IDE

Перейдите в Preferences → Code Style → Java и в выпадающем списке Scheme выберите нужный стиль кода или установите новый.

Два стиля, которые особенно стоит упомянуть:

Можно импортировать тему, как в примере:

4. Используйте split screen, чтобы повысить продуктивность

Сплит скрин

Чтобы активировать раздельный экран, щелкните правой кнопкой мыши по табу с основным экраном и выберите Split Vertically/Horizontally.

Активировать сплит скрин

Для максимальной производительности можно установить для этого действия собственные горячие клавиши. Перейдите в Preferences → Keymap и найдите пункт Split Vertically. Откройте контекстное меню и выберите Add Keyboard Shortcut. Для примера, можно установить сочетание control + alt + v.

5. Отвлеченный режим

Отвелеченный режим

Отвлеченный режим поможет сконцентрироваться на работе. Редактор развернет рабочую область с кодом на весь экран, скрыв лишние элементы интерфейса. Чтобы активировать режим, откройте меню View и выберите Enter Distraction Free Mode.

6. Использование живых шаблонов

Используйте сочетание cmd + j (ctrl + j для Windows/Linux).

Можно применять множество заготовленных шаблонов кода, например для Toasts или if.

Можно использовать собственные живые шаблоны. Как это сделать, описано в материалах для Android Studio и IntelliJ IDEA.

1. Лучшая команда – Search for command

Она вызывается через сочетание cmd + shift + a (для Windows и Linux: ctrl + shift + a). Для примера, вам нужно закрыть текущую вкладку, но вы не знаете как. Просто напишите close и получите команду или сочетание клавиш для этого.

2. Поиск последних действий в буфере copy/paste

Вызывается через cmd + shift + v (Windows и Linux: ctrl + shift + v). По умолчанию доступно 5 последних действий для копировать/вставить.

Copy/paste

3. Активация мультикурсора

Включается через control + g (и alt + j для Windows и Linux).

Рекомендуем ознакомиться с более подробной статьей об этом функционале.

4. Открыть класс

Открыть новый класс можно через cmd + o (Windows и Linux: ctrl + n)

5. Открыть файл

Новый файл открывается сочетанием cmd + shift + o (Windows и Linux: ctrl + shift + n)

6. Поиск по символу

Cmd + option + o (Windows и Linux: alt + shift + n)

7. Переход к реализации

Для примера, у вас есть интерфейс. Кликните на имя интерфейса, прожмите cmd + option + b (Windows / Linux: ctrl + alt + b) и выберите Go to implementation – и вы перейдете к классу, который реализует этот интерфейс.

8. Переход к объявлению

Через сочетание cmd + b (Windows и Linux: ctrl + b) можно быстро перейти к объявлению класса, метода или переменной.

9. Переход к объявлению типа

Допустим, у нас есть код:

Установив курсор на employee, через сочетание control + shift + b (Windows и Linux: ctrl + shift + b) можно перейти к месту, где объявлен класс Employee.

10. Go to super

Для примера, вы переопределяете некий метод. Если установить курсор на имени метода и выбрать использовать сочетание cmd + u (Windows и Linux: ctrl + u) вас перенаправит на родительский метод.

11. Переключение между вкладками

Это делается через сочетание cmd + shift + [ (стрелка влево) или cmd + shift + ] (стрелка вправо) (Windows для Linux: вместо cmd – alt).

12. Переключение между вкладками Design/Text

Для Android Studio в режиме макета работает сочетание control + shift + ← / → (Windows и Linux: alt + shift + ← / →).

13. Закрыть текущую вкладку

Сочетание cmd + w (для Windows и Linux: ctrl + F4).

14. Скрыть все окна

Через cmd + shift + F12 (Windows и Linux: ctrl + shift + F12).

15. Свернуть экземпляр Android Studio

Сочетание cmd + shift + F12 (Windows и Linux: ctrl + shift + F12)

16. Форматировать код

Cmd + option + l (Windows и Linux: ctrl + alt + l).

17. Автоматический отступ для строк

Через сочетание control + option + i (Windows и Linux: ctrl + alt + i).

18. Реализация методов

Реализуя интерфейс, через сочетание control + i (Windows / Linux: ctrl + i) вы можете быстро импортировать методы, предоставляемые этим интерфейсом.

19. Умное автодополнение

Включается через сочетание control + shift + space (Windows и Linux: ctrl + shift + space), список подстраивается под ожидаемый тип.

20. Поиск

Сmd + f (Windows и Linux: ctrl + f).

21. Найти и заменить

Cmd + r (Windows и Linux: ctrl + r).

22. Перемещение строк из кода в ресурсы

Когда курсор установлен на тексте, используйте сочетание option + return (Windows / Linux: alt + enter).

Читайте также: