Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Gukamanav
12 / 11 / 3
Регистрация: 11.08.2016
Сообщений: 68
1

Выполнение действия сразу после запуска активити

25.03.2018, 17:52. Просмотров 167. Ответов 4
Метки нет (Все метки)

Ситуация такова. Есть Активити в активити лежит TabLayout +ViewPager в который подгружаются 2 фрагмента в каждом фрагменте по Recycler View. Необходимо заполнить кажды RV данными сразу после старта активити.

Если попытатся определить RV который находится во фрагменте во время старта активити, то выдает ошибку, но если выполнить это же действие после старта активити по, кнопке то приложение отрабатывает штатно.


Java
1
2
3
4
5
6
7
  
           ........
 
            Fragment sellOrdersFragment = getSupportFragmentManager().findFragmentByTag(tabAdapter.getSellFragmentTag);
            rvSellOrders = sellOrdersFragment.getView().findViewById(R.id.rvOrders); <<==тут ошибка
            
            ........
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.03.2018, 17:52
Ответы с готовыми решениями:

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

Эмулятор исчезает сразу после запуска
Запускаю в Android Studio эмулятор, окно открывается на пару секунд и исчезает....

Выполнение действия по таймеру
Здравствуйте. Подскажет пожалуйста, каким образом можно решить следующую...

Выполнение действия по таймеру
Здравствуйте, подскажите пожалуйста, надо по клику на кнопку показать Layaut,...

Мигает активити после сплешскрина
Есть сплешскрин взятый с какого то сайта, он работает отлично public class...

4
Ev[G]eN
iOS/Android Developer
Эксперт С++
5117 / 1555 / 950
Регистрация: 23.01.2011
Сообщений: 3,185
Завершенные тесты: 1
26.03.2018, 10:54 2
RecyclerView лежит во фрагменте, а ты собираешься заполнить его из активити? Это чем вызван выбор столь сомнительного решения?
Что мешает заполнять их непосредственно во фрагментах?
0
Gukamanav
12 / 11 / 3
Регистрация: 11.08.2016
Сообщений: 68
26.03.2018, 14:30  [ТС] 3
Ev[G]eN, Этот фрагмент используется в нескольких местах, и везде RV заполняется различными данными, мне показалось, что легче реализовать заполнение его из активити, чем плодить несколько одинаковых фрагментов или думать над реализацией логики во фрагменте.

Ну и просто в конце концов интересно как, выполнить действие сразу же позле создания и запуска активити.
0
Ev[G]eN
iOS/Android Developer
Эксперт С++
5117 / 1555 / 950
Регистрация: 23.01.2011
Сообщений: 3,185
Завершенные тесты: 1
26.03.2018, 15:09 4
Java
1
2
3
4
    @Override
    public void onAttachFragment(Fragment fragment) {
        super.onAttachFragment(fragment);
    }
в активити
0
Gukamanav
12 / 11 / 3
Регистрация: 11.08.2016
Сообщений: 68
26.03.2018, 19:28  [ТС] 5
Ev[G]eN, да как-то без изменений, либо я что-то делаю не так

Первоначальный вариант.
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
 
    ViewPager vpOrders;
    TabLayout tlOrders;
    Fragment sellOrdersFragment, buyOrdersFragment;
    RecyclerView rvSellOrders, rvBuyOrders;
    TabAdapter tabAdapter;
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_orders);
 
        vpOrders = findViewById(R.id.vpOrders);
        tlOrders = findViewById(R.id.tlOrders);
 
        tabAdapter = new TabAdapter(getSupportFragmentManager());
 
        vpOrders.setAdapter(tabAdapter);
        tlOrders.setupWithViewPager(vpOrders);
 
 
        sellOrdersFragment = getSupportFragmentManager().findFragmentByTag(tabAdapter.sellFragmentTag);
        buyOrdersFragment = getSupportFragmentManager().findFragmentByTag(tabAdapter.buyFragmentTag);
 
        rvSellOrders = sellOrdersFragment.getView().findViewById(R.id.rvOrders);[COLOR="Red"]<<==тут ошибка[/COLOR]
        rvBuyOrders = buyOrdersFragment.getView().findViewById(R.id.rvOrders);
 
         .....
0
26.03.2018, 19:28
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.03.2018, 19:28

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

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

Ошибки при востановление активити после уничтожения
Странное поведение андроида при переходе планшета в дежурный режим (черный...


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

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

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