Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
Serbis
19 / 19 / 2
Регистрация: 13.07.2012
Сообщений: 159
1

Как получить ссылку на экземпляр класса активности из ресивера

02.04.2015, 16:06. Просмотров 940. Ответов 3
Метки нет (Все метки)

Имеется ресивер, в нем объявлен интерфейс. Его методы определяется в MainActivity. Необходимо произвести обратный возов метода интерфейса. Что ему передавать? При работе с фрагментами есть чудесный метод getActivity которые возращает экземпляр класса активности. Как быть тут?

Java
1
2
3
4
5
6
7
8
9
10
11
12
public class downloadReceiver extends BroadcastReceiver {
    public interface OnFinishDownlodListener {
        void onFinishDownload();
    }
 
    @Override
    public void onReceive(Context context, Intent intent) {
        OnFinishDownlodListener listener = (OnFinishDownlodListener)???????????;
        listener.onFinishDownload();
        }
 
}
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.04.2015, 16:06
Ответы с готовыми решениями:

Как получить ссылку на текущий экземпляр класса внутри этого класса?
Как? Чтобы отрабатывал деструктор! и в нем можно было поиметь этот this ... Идея в том, что пишу...

Получить ссылку на экземпляр класса
Всем доброго времени суток!!! Есть вот такие два класса. Class1 { } Class2 { List<Class1>...

Можно ли получить ссылку на экземпляр класса по полю этого экземпляра
схематично код такой - class A { static void staticMethodA(SomeClass* memberA); ...

Как передать в метод класса ссылку на экземпляр
Есть класс class Class{ ... } Как передать в метод экземплер класса из которого вызывается этот...

Как передавать ссылку на экземпляр класса между Activity?
Если в MainActivity я создаю ссылку (SaveDataObj ) на класс и выделяю память (new SaveData()) под...

3
Pablito
2863 / 2275 / 768
Регистрация: 12.05.2014
Сообщений: 7,978
Завершенные тесты: 1
02.04.2015, 16:37 2
передать в конструктор и запомнить?
0
Serbis
19 / 19 / 2
Регистрация: 13.07.2012
Сообщений: 159
02.04.2015, 17:01  [ТС] 3
Паблито, Конструктор в классе ресивера бесполезен. Создаю экземпляр ресивера, передаю ему this, а когда приходит broadcast система игнорирует существующий экзмепляр класса ресивера и создает его по новой. В итоге в переданный до этого в ресивер экземпляр становится null, и интерфейс пытается обратиться в никуда. Вообще попахивает очередной дуростью от гугла, почему нельзя было сделать функцию обратного вызова.
0
Spelcrawler
531 / 501 / 113
Регистрация: 12.03.2014
Сообщений: 1,667
Завершенные тесты: 1
02.04.2015, 21:48 4
Serbis, вообще не понял что вы хотите сделать. Вызвать метод в ресивере после того как отработает код из активити?
0
02.04.2015, 21:48
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.04.2015, 21:48

Как получить ссылку на экземпляр объекта?
void OnCollisionEnter2D(Collision2D collision) { if (collision.gameObject.layer ==...

Как передать ссылку на экземпляр класса с одной формы на другую
Как передать ссылку на экземпляр класса с одной формы на другую?

Как получить ссылку на созданный экземпляр окна в другом методе?
Всем добра! создаю экземпляр окна: var logWindow = new LogWindow(); logWindow.Show(); как...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.