С наступающим Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/5: Рейтинг темы: голосов - 5, средняя оценка - 5.00
Den Brown
38 / 38 / 0
Регистрация: 08.10.2013
Сообщений: 123
Записей в блоге: 1
1

Зачем нужно два onResume() в Активити?

03.04.2014, 17:55. Просмотров 1018. Ответов 2
Метки нет (Все метки)

Всем привет!

Ну вот и настал великий день, когда я вышел за пределы вопросов про упражнения из Андройд учебников. Хотя с ними я еще не закончил

Только что создал шаблон Приложения для одной коммерчесской Платформы. Все что этот шаблон делает: логит юзера и делает пару РЕСТ аутколов. МНе ничего другого пока и не надо. Но даже в этом простом коде я вижу непонятный места.

В Активити вижу два onResume(), понимаю из комментариев зачем они, но не понимаю как вызывается второй кастомный onResume().

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
public class MainActivity extends PlatformActivity {
 
    private RestClient client;
    private ArrayAdapter<String> listAdapter;
    
    @Override
    protected void onCreate....
    
    @Override 
    public void onResume() {
        // Hide everything until we are logged in СКРЫВАЕМ НА ПЕРИОД ПОКА ЛОГИМСЯ, здесь все понятно
        findViewById(R.id.root).setVisibility(View.INVISIBLE);
 
        // Create list adapter
        listAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, new ArrayList<String>());
        ((ListView) findViewById(R.id.contacts_list)).setAdapter(listAdapter);              
        
        super.onResume();
    }       
    
    @Override // И ВОТ ВТОРОЙ onResume который принимает RestClient, но кто и когда его вызывает?
    public void onResume(RestClient client) {
        // Keeping reference to rest client // А откуда мы собственно передаем сюда этот client?
        this.client = client; // вот тут ситуация: а если бы вместо this.client мы написали просто client.
                                  //Получилось бы две переменные с одни именем? невозможно...
 
        // Show everything И наконец, после залогивания, мы все показываем...
        findViewById(R.id.root).setVisibility(View.VISIBLE);
    } // и супер класс super.onResume() не вызывается второй раз.

И второй небольшой вопрос.

В учебниках мы просто создаем Активити (одно или несколько) и все работает. А здесь я вижу такой класс:

Java
1
2
3
4
5
6
public class HelloMyApp extends Application {
 
    @Override
    public void onCreate() {
        super.onCreate();
        PlatformSDKManager.initNative(getApplicationContext(), new KeyImpl(), MainActivity.class);
то есть изначально вызывается Application наследник который и вызывает MainActivity.
Насколько такой путь - использование Application наследника - часто употребляемый?
Или это вообще единственно правильный путь?

Спасибо за ваше мнение и ответы.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.04.2014, 17:55
Ответы с готовыми решениями:

Bluetooth и два активити
Разрабатываю приложение для связи смартфона по блютус с метеостанцией. По...

Сокет на два активити
Здраствуйте! Есть программа с двумя активити, на первом вводим ip и порт и...

На телефоне highscreen 3 на всех активити происходит быстрый самовозврат к главной активити
Сделал меню в виде ListView. При клике на меню запускаются активити. На...

Как вызвать метод в активити классе из обычного не активити класса?
Есть активити в котором вводятся логин и пароль. При нажатии кнопки &quot;войти&quot; в...

Может ли быть два виджета в одном проекте где у каждого будет своя активити настроек?
Попытался так сделать, все везде написал и в provider и в manifest, но все...

2
KillAndEat
63 / 63 / 8
Регистрация: 17.05.2013
Сообщений: 286
03.04.2014, 18:22 2
Den Brown, использование Application зависит от того нужно ли вам что то сделать до того как начнет загружаться активити или нет. Например тут можно создать класс реализованный по Singleton шаблону, чтоб его нечаянно не сожрал сборщик мусора при объявлении его в активити.

Второй оnResume по видимому из PlatformActivity. Посмотрите исходники класса наверняка там вы его и найдете.
2
Gerc
0 / 0 / 0
Регистрация: 03.04.2011
Сообщений: 13
04.04.2014, 11:58 3
Den Brown, скинь исходники посмотреть
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.04.2014, 11:58

Изменение параметров активити из другого активити
Как сделать так чтобы из первого активити поменять final ImageView...

Вызов новой активити не из класса активити
Есть 4 класса: 1) WelcomeActivity; 2) MainActivity; 3) PopUpActivity; 4)...

Отображение активити поверх другого активити
Ребят подскажите пожалуйста как такое сделать. Есть активити с картой, по...


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

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

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