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

Как получить доступ к методам объекта класса наследуемого от Activity, когда он выводится во вкладку

10.02.2016, 14:24. Просмотров 462. Ответов 3
Метки нет (Все метки)

В главном Активити создаются вкладки на котовые выводятся другие активити.

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
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        
        TabHost tabHost = (TabHost) findViewById(android.R.id.tabhost);
        LocalActivityManager localActivityManager = new LocalActivityManager(this, false);
        localActivityManager.dispatchCreate(savedInstanceState);
        tabHost.setup(localActivityManager);
        tabHost.getTabWidget().setDividerDrawable(R.drawable.divider2);
        TabHost.TabSpec tabSpec;
        
        View v1 = createTabView(tabHost.getContext(), "Заявки");             /// Первая вкладка
        tabSpec = tabHost.newTabSpec("tag1");
        tabSpec.setIndicator(v1);
        Intent intent1=new Intent(this, Orders.class);
        tabSpec.setContent(intent1);
        tabHost.addTab(tabSpec);
 
 
        tabSpec = tabHost.newTabSpec("tag2");                                       ///Вторая вкладка
        View v2 = createTabView(tabHost.getContext(), "Маршрут");
        tabSpec.setIndicator(v2);
        tabSpec.setContent(new Intent(this, Route.class));
        tabHost.addTab(tabSpec);
в Orders.class объявлен метод "refreshFromDataBase()", я хочу вызывать этот метод из меню, меню сделано, в обработчик нажатия пункта меню я попадаю, а как в обработчике запустить метод не знаю. Как получить доступ к объекту Orders.class который находится на первой вкладке, чтобы вызвать метод "refreshFromDataBase()"
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.02.2016, 14:24
Ответы с готовыми решениями:

Доступ к элементам Activity из другого класса
Есть Activity, в её классе создаю экземпляр другого класса twoclass tw = new...

Передача объекта не сериализуемого класса от дочерней Activity к родительской
Уважаемые форумчане, помогите решить проблему. Суть проблемы. Нужно передать...

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

Доступ к методам класса без создания объекта
Почему доступны методы foo() и bar() класса А, если нет ни одного объекта это...

Нет доступа к методам наследуемого класса partial
Создал партиал класс public partial class Post { public...

3
YuraAAA
1578 / 1319 / 282
Регистрация: 25.10.2009
Сообщений: 3,436
Записей в блоге: 2
10.02.2016, 14:30 2
heid, мало что понятно. Но
Цитата Сообщение от heid Посмотреть сообщение
В главном Активити создаются вкладки на котовые выводятся другие активити.
подсказывает, что Вы должны использовать 1 активити, а вкладки делать фрагментами
0
heid
0 / 0 / 0
Регистрация: 10.02.2016
Сообщений: 5
10.02.2016, 15:05  [ТС] 3
Попробую сформулировать по другому:
1) есть класс MainActivity наследуемый от AppCompatActivity который собственно мы видим при запуске приложения. В его layout файле есть TabHost.
2) выше приведен метод onCreate класса MainActivity. Из кода видно что создаются две вкладки. В качестве содержимого первой вкладки назначается другой класс Orders наследуемый от Activity.

все просто при запуске приложения я вижу на вкладках то что и должно быть (там много элементов описывать долго) списки с содержимым базы данных. Далее я создаю меню в котором есть кнопка "Обмен". При нажатии на которую я получаю от вэб сервиса данные, очищаю базу данных и загружаю в нее новые данные. Далее необходиом чтобы ListView расположенный в Orders отобразил новые данные. Для этого я в Orders написал метод, который обновляет ListView из базы данных. Но как мне вызвать этот метод? если я нахожусь в обработчике нажатия кнопки в меню, обработчик же находится в коде класса MainActivity.

Добавлено через 1 минуту
вот здесь создается вкладка
Java
1
2
3
4
5
6
        View v1 = createTabView(tabHost.getContext(), "Заявки");             /// Первая вкладка
        tabSpec = tabHost.newTabSpec("tag1");
        tabSpec.setIndicator(v1);
        Intent intent1=new Intent(this, Orders.class);
        tabSpec.setContent(intent1);
        tabHost.addTab(tabSpec);
Как мне получить доступ к Orders который отображается на вкладке?

Добавлено через 44 секунды
могу выложить весь код, но это очень много.
0
YuraAAA
1578 / 1319 / 282
Регистрация: 25.10.2009
Сообщений: 3,436
Записей в блоге: 2
10.02.2016, 15:43 4
heid, ещё раз. Надо использовать фрагменты.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.02.2016, 15:43

Как получить доступ к переменным объекта класса-родителя?
Я знаю, что обычно передают указатель на объект класса в функцию чайлда, но вот...

Как получить доступ к методам найденого контрола
Допустим я нашол контрол на форме так foreach (Control ctrl...

Как в std::vector получить доступ к методам элементов?
Здравствуйте. Нужно что-то вроде этого: #include <iostream> #include...


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

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

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