Урок 22. Intent, Intent Filter, Context - теория

Обсуждение уроков
Ответить
Аватара пользователя
damager82
Администратор
Сообщения: 1383
Зарегистрирован: 07 янв 2012, 11:32
Контактная информация:

Урок 22. Intent, Intent Filter, Context - теория

Сообщение damager82 » 06 окт 2011, 03:00

В этом уроке:

- разбираемся в коде урока 21
- теория по Intent и Intent Filter
- немного о Context

Click here to read this article!
Последний раз редактировалось damager82 29 апр 2017, 18:47, всего редактировалось 5 раз.
Добро пожаловать на форум сайта StartAndroid
ИзображениеИзображение

Аватара пользователя
Mikhail_dev
Сообщения: 2386
Зарегистрирован: 09 янв 2012, 14:45
Откуда: Самара

Re: Урок 22. Intent, Intent Filter, Context - теория

Сообщение Mikhail_dev » 12 янв 2012, 01:54

Довольно хорошее описание. Спасибо.
Один вопрос: при неявной отправке объекта-Intent, поиск нужного Activity (если таковой существует) происходит быстро или всё же ощущается задержка?

Аватара пользователя
RagnarR
Сообщения: 29
Зарегистрирован: 11 янв 2012, 11:02
Откуда: Belarus

Re: Урок 22. Intent, Intent Filter, Context - теория

Сообщение RagnarR » 12 янв 2012, 09:40

no-- писал(а):Довольно хорошее описание. Спасибо.
Один вопрос: при неявной отправке объекта-Intent, поиск нужного Activity (если таковой существует) происходит быстро или всё же ощущается задержка?
В целом, зависит от "железа", но на практике не замечал особых проблем по скорости даже при наличии большого количества фильтров и намерений.
--[+++++++<---->>-->+>+>+<<<<]
<.>++++[-<++++<++>>>->--<<]>>-.>--..>+.<<<.<<-.>>+>->>.+++[.<]<<++.

mitand
Сообщения: 1
Зарегистрирован: 28 ноя 2013, 16:43

Re: Урок 22. Intent, Intent Filter, Context - теория

Сообщение mitand » 28 ноя 2013, 16:50

Интересует общетеоретический вопрос:
Зачем упаковать в объект класса Intent объект-Activity для его дальнейшей передачи методу startActivity(). Почему объект-Activity нельзя запустить сразу через этот метод?

WizikTLT
Сообщения: 52
Зарегистрирован: 01 ноя 2013, 13:30

Re: Урок 22. Intent, Intent Filter, Context - теория

Сообщение WizikTLT » 28 ноя 2013, 16:59

Наверное потому, что на вход startActivity(Intent intent)
принимает Intent а не Activity.
Ваш К.О. =)

Аватара пользователя
KamiSempai
Сообщения: 1339
Зарегистрирован: 17 фев 2012, 21:23
Откуда: Мордор

Re: Урок 22. Intent, Intent Filter, Context - теория

Сообщение KamiSempai » 28 ноя 2013, 17:04

mitand писал(а):Интересует общетеоретический вопрос:
Зачем упаковать в объект класса Intent объект-Activity для его дальнейшей передачи методу startActivity(). Почему объект-Activity нельзя запустить сразу через этот метод?
На самом деле ни чего ни куда не упаковывается. Intent содержит лишь информацию о классе Activity и том как ее запускать. Intent переводится как намерение.
Фактически это класс содержащий информацию для системы, что мы хотим сделать.
R.id.team
Хватит таскать макулатуру на тренировку! Используй T Note.

GRAF_COLLIOSTRO
Сообщения: 115
Зарегистрирован: 08 янв 2015, 14:32

Re: Урок 22. Intent, Intent Filter, Context - теория

Сообщение GRAF_COLLIOSTRO » 22 ноя 2015, 15:35

не знаю куда воткнуть вопрос. наверное всёжтаки по контексту:

не могу разобраться с this и тому подобным(((

собственно задача: есть активити и класс не относящийся к активити.

как вызвать новое активити из этого класса подсказали: - надо получить доступ к контексту.

Код: Выделить всё

Intent intent = new Intent(Context, My.class);
Context.startActivity(intent);
теперь куча непоняток как захлопнуть активити из другого класса

все варианты c finish(); не работают(

создаю в активити:

Код: Выделить всё

public void close {this.finish();}
не могу его вызвать так как ACTIVITY.close() ругается, что метод NON STATIC

если сделать STATIC, то this.finish(); ругается, что this используется в статическом методе

короче я сломал мозг(

Аватара пользователя
doter.ua
Сообщения: 1106
Зарегистрирован: 23 ноя 2013, 16:08
Откуда: Ukraine

Re: Урок 22. Intent, Intent Filter, Context - теория

Сообщение doter.ua » 22 ноя 2015, 16:20

Передавай в парметрах активити, а не контекст. (MyActivity activity)
Семь раз отмерь - поставь студию.
Эклипс не студия, ошибка вылетит - не исправишь.
Скажи мне кто твой друг, и оба поставили студию.
Студия - свет, а эклипс - тьма.

WKBAPKA
Сообщения: 32
Зарегистрирован: 03 янв 2014, 14:28

Re: Урок 22. Intent, Intent Filter, Context - теория

Сообщение WKBAPKA » 15 фев 2016, 11:09

GRAF_COLLIOSTRO писал(а):не знаю куда воткнуть вопрос. наверное всёжтаки по контексту:

не могу разобраться с this и тому подобным(((

собственно задача: есть активити и класс не относящийся к активити.

как вызвать новое активити из этого класса подсказали: - надо получить доступ к контексту.

Код: Выделить всё

Intent intent = new Intent(Context, My.class);
Context.startActivity(intent);
теперь куча непоняток как захлопнуть активити из другого класса

все варианты c finish(); не работают(

создаю в активити:

Код: Выделить всё

public void close {this.finish();}
не могу его вызвать так как ACTIVITY.close() ругается, что метод NON STATIC

если сделать STATIC, то this.finish(); ругается, что this используется в статическом методе

короче я сломал мозг(
насколько я понимаю, поправьте меня если ошибаюсь:
this в java это указатель на текущий объект, поэтому в разных классах будет указывать на разные объекты. Поэтому иногда надо использовать метод GetAplicationContex() класса Activity, если необходимо получить контекст нашего приложения. Intent - это другой класс, другой тип, выполняющий другую функцию, поэтому нельзя передать в методе параметр другого типа.

и раз код выполняется в другом классе, то у вас this указывает именно на этот класс, а не на контекст приложения.

CrazyShotz
Сообщения: 8
Зарегистрирован: 17 фев 2016, 09:18

Re: Урок 22. Intent, Intent Filter, Context - теория

Сообщение CrazyShotz » 29 фев 2016, 09:55

Нет кода - нет вопросов)

Ответить