Добавление активити android studio

Добавление активити android studio

В большинстве программ программисту не обойтись всего лишь одним рабочим окном для реализации интересной идеи. Как правило, программа состоит из нескольких таких окон, каждое из которых наполнено своим содержанием и функциями. Поэтому сегодня мы научимся делать программу с двух Activity, между которыми будет переход.

Создаем новый проект в Andoid Studio, все названия традиционно оставляем по умолчанию. Итак, сейчас мы имеем всего одно Activity — MainActivity, 1 файл разметки интерфейса activity_ main .xml, описывающий наше MainActivity . Создадим еще одно Activity . Слева, в окне, отображающем структуру приложения, выделяем папку приложения app — New — Java Class:

Выбираем где именно поместить новый созданный класс: app\src\main\java:

В следующем окне вводим имя создаваемой активности: SecondActivity и жмем ОК. Слева в панели сразу откроется папка, где создано новое Activity, проследите, чтобы обе активности были в одной папке. Если у вас вышло вот так:

то просто перетащите файл SecondActivity в папку с MainActivity.

Теперь нужно создать файл разметки для SecondActivity. Делаем это аналогично созданию активности: в окне слева раскрываем папку res и нажимаем правой кнопкой мыши на подпапку layout: жмем New — Layout resourse file. В открывшемся окне вводим имя: second и жмем ОК. Все, все необходимые файлы созданы.

Теперь нужно привязать созданный файл разметки интерфейса second.xml к SecondActivity. Открываем SecondActivity и выполняем эту привязку:

Как видите, здесь ничего сложного. Устанавливаем наследование нашим новым классом extends Activity, создаем метод onCreate. Чтобы не писать его вручную, делаем так: на верхней панели ищем кнопку Code — Override Methods, начинаем вводить название OnCreate, подсказка нам его быстренько выдаст, и жмем ОК. Настраиваем вид контента окна с нашего файла second.xml: setContentView(R.layout.second).

Теперь начнем реализацию нашей мечты: при нажатии на кнопку на одном экране — происходит переход на другой экран с другим содержимым.

Открываем файл activity_main.xml и создаем там кнопку, при нажатии на которую будет происходить переход:

Теперь нужно описать процесс нажатия, кликнем на надпись «Click» в последней строчке и нажмем комбинацию клавиш Alt + Enter:

и жмем еще раз Enter по строчке «Create «Click(View)» in «MainActirvity»«. Таким образом мы автоматически добавили метод обработки щелчка в MainActivity.

Теперь в созданном методе » Click » нужно написать код, который будет производить переход при нажатии:

Перед тем, как приступить к тестированию нашего творения вспомним, что еще нужно зарегистрировать наш новый класс SecondActivity в файле манифеста приложения. Открываем файл AndroidManifest.xml и между тегами впихиваем это:

Читайте также:  Как вытащить ярлык андроид

В принципе все. Давайте только заполним хоть каким то содержимым наш SecondActivity, чтобы переход был более очевидным.

Откроем созданный нами файл second.xml. Ну а тут свобода! Добавьте то, что сами желаете увидеть при переходе на эту активность. Например я добавлю туда элемент

с надписью «Приехали!» и размещу ее в центре:

Все, поздравляю, можем запускать и тестировать наше чудо (если у вас что то не вышло, пересмотрите все шаги внимательней, там все работает).

После освоения этого урока сразу советую вам заглянуть сюда, а также сюда . Удачи!

Источник

Полный список

В этом уроке мы:

— создадим и вызовем второе Activity в приложении

Урок был обновлен 12.06.2017

Мы подобрались к очень интересной теме. На всех предыдущих уроках мы создавали приложения, которые содержали только один экран (Activity). Но если вы пользуетесь смартфоном с Android, то вы замечали, что экранов в приложении обычно больше. Если рассмотреть, например, почтовое приложение, то в нем есть следующие экраны: список аккаунтов, список писем, просмотр письма, создание письма, настройки и т.д. Пришла и нам пора научиться создавать многоэкранные приложения.

Application/Library name: TwoActivity
Module name: p0211twoactivity
Package name: ru.startandroid.p0211twoactivity

Откроем activity_main.xml и создадим такой экран:

На экране одна кнопка, по нажатию которой будем вызывать второй экран.

Открываем MainActivity.java и пишем код:

Мы определили кнопку btnActTwo и присвоили ей Activity в качестве обработчика. Реализация метода onClick для кнопки пока заполнена частично — определяем, какая кнопка была нажата. Чуть позже здесь мы будем вызывать второй экран. Но сначала этот второй экран надо создать.

Если помните, при создании проекта у нас по умолчанию создается Activity.

От нас требуется только указать имя этого Activity – обычно мы пишем здесь MainActivity. Давайте разбираться, что при этом происходит.

Мы уже знаем, что создается одноименный класс MainActivity.java – который отвечает за поведение Activity. Но, кроме этого, Activity «регистрируется» в системе с помощью манифест-файла — AndroidManifest.xml.

Давайте откроем этот файл:

Нас интересует тег application. В нем мы видим тег activity с атрибутом name = MainActivity. В activity находится тег intent-filter с определенными параметрами. Пока мы не знаем что это и зачем, сейчас нам это не нужно. Забегая вперед, скажу, что android.intent.action.MAIN показывает системе, что Activity является основной и будет первой отображаться при запуске приложения. А android.intent.category.LAUNCHER означает, что приложение будет отображено в общем списке приложений Android.

Т.е. этот манифест-файл — это что-то типа конфигурации. В нем мы можем указать различные параметры отображения и запуска Activity или целого приложения. Если в этом файле не будет информации об Activity, которое вы хотите запустить в приложении, то вы получите ошибку.

Android Studio при создании модуля создала MainActivity и поместила в манифест данные о нем. Если мы надумаем сами создать новое Activity, то студия также предоставит нам визард, который автоматически добавит создаваемое Activity в манифест.

Читайте также:  Калькулятор времени для андроид

Давайте создадим новое Activity

Жмем правой кнопкой на package ru.startandroid.p0211twoactivity в папке проекта и выбираем New -> Activity -> Empty Activity

В появившемся окне вводим имя класса – ActivityTwo, и layout – activity_two.

Класс ActivityTwo создан.

В setContentView сразу указан layout-файл activty_two.

Он был создан визардом

Откройте activty_two.xml и заполните следующим кодом:

Экран будет отображать TextView с текстом «This is Activity Two».

Сохраните все. Класс ActivityTwo готов, при отображении он выведет на экран то, что мы настроили в layout-файле two.xml.

Давайте снова заглянем в файл манифеста

Появился тег activity с атрибутом name = .ActivityTwo. Этот тег совершенно пустой, без каких либо параметров и настроек. Но даже пустой, он необходим здесь.

Нам осталось вернуться в MainActivity.java и довершить реализацию метода onClick (нажатие кнопки), а именно — прописать вызов ActivityTwo. Открываем MainActivity.java и добавляем строки:

(добавляете только строки 2 и 3)

Обновите импорт, сохраните все и можем всю эту конструкцию запускать. При запуске появляется MainActivity

Нажимаем на кнопку и переходим на ActivityTwo

Код вызова Activity пока не объясняю и теорией не гружу, урок и так получился сложным. Получилось много текста и скриншотов, но на самом деле процедура минутная. Поначалу, возможно, будет непонятно, но постепенно втянемся. Создадим штук 5-6 новых Activity в разных проектах и тема уляжется в голове.

Пока попробуйте несколько раз пройти мысленно эту цепочку действий и усвоить, что для создания Activity необходимо создать класс (который наследует android.app.Activity) и создать соответствующую запись в манифест-файле.

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

— разбираемся в коде урока 21
— теория по Intent и Intent Filter (не пропустите, тема очень важная)
— немного о Context

Присоединяйтесь к нам в Telegram:

— в канале StartAndroid публикуются ссылки на новые статьи с сайта startandroid.ru и интересные материалы с хабра, medium.com и т.п.

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

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

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

Источник

Intent — Android приложение с несколькими Activity

Хотите научиться делать приложения для андроид? В этом уроке создадим простое android приложение с несколькими активностями, используя intent — намерения, в Android Studio.

Создание проекта «My Activitys»

В Android Studio создадим новый проект, новое приложение — «My Activitys». Нажмем next, empty activity, сократим название Layout Name до main и нажмем finish. Система подготовит файлы проекта.

Редактируем внешний вид главной активности

В файле main.xml переместим выше текстовую строку элемента TextView «Hello World», в дальнейшем она нам еще понадобится.

В файле Strings.xml добавим несколько текстовых значений, строковая переменная act1 со значением — «Первая activity», так же добавим еще два строковых элемента act2 и act3, со значениями «Вторая activity» и «Третья activity». Очистим значение элемента TextView android:text и присвоим ему android:text=»@string/act1″, на данной форме у нас будет написано «Первая activity».

Читайте также:  Где хранится резервная копия android

Из компонентов Layouts добавим RelativeLayout, на которую поместим кнопки: для вызова второй, третей активности, расположим их вертикально, проще это сделать через текстовую версию main.xml. Расположим их одну под одной, добавим третью кнопку, она нам нужна будет для закрытия формы. Так же в string.xml допишем текстовое значение btnClose со значением выход «Закрыть».

Присвоим кнопкам через «@string/» значения этих кнопок, сохраним наш проект.

Создаем новые Layout файлы

В папке res/layout добавим новый xml layout файл main2.xml и main3.xml, для описания разметки наших будущих activitys. Что бы не создавать снова внешний вид скопируем из файла main.xml и вставим в наши xml файлы разметку(в новых Activity должны быть ConstraintLayout и TextView). В main3.xml переприсвоим значение TextView act3, что бы у нас была надпись «Третья activity», вставим разметку и в main2.xml, так же присвоим TextView значение act2, соответственно это будет «Вторая activity». Сохраним проект.

Создание классов для Activity

В папке Java нашего проекта создадим дополнительно два класса: Activity2 И Activity3. Добавим в Activity2 код из MainActivity, что бы не набирать его снова, изменим имя класса и (R.layout.main) на (R.layout.main2), скопируем код и вставим в Activity3, исправим имя активности и layout main3. Сохраним проект.

Внесение активностей в манифест

В файле AndroidManifest.xml опишем наши активности, добавим еще две записи, скопируем описание MainActivity и исправим android:name=».Activity2″, изменим категорию LAUNCHER на DEFAULT. Повторим процедуру для Activity3 изменив имя активности, сохраним файл.

Пишем основной код в MainActivity

Найдем наши кнопки:

При нажатии на первую кнопку будет запускаться «Вторая activity», продублируем код для остальных кнопок:

Создадим обработчик нажатия на кнопку(запуск второй активности):

Напишем обработчик нажатия на кнопку(запуск третьей активности):

Для btnClose так же напишем обработчик:

Сохраним наш проект.

Пуск в эмуляторе Android Studio

Наконец то запустим в эмуляторе наше приложение. Как мы видим при нажатии на кнопку «Вторая активность» запускается форма вторая активность, при нажатии на кнопку «Третья activity» запускается соответственно третья активность, при нажатии на кнопку «Закрыть» закрывается MainActivity она же главная форма в приложении. По такому же принципу устроены и действуют приложения с несколькими либо большим количеством Activitys через Intent передаются намерения и открываются формы новых окон, как если б это было в приложениях Windows.

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

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

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

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

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

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

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

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

В этом видео смотрите как с помощью Intent сделать Android приложение с несколькими Activity:

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

Источник

Оцените статью