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

Создание суперкласса для всех Activity

23.05.2015, 17:16. Просмотров 514. Ответов 4
Метки нет (Все метки)

Господа,доброго времени суток!
Возник следующий вопрос: у меня есть несколько активностей(activity1, activity2, activity3), каждая из них содержит по одному фрагменту(fragment1, fragment2, fragment3).
Возможно ли и имеет ли смысл создать некую супер-Activity с фрагментом, наследники которой смогут реализовывать свои специфичные activity+fragment ?
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.05.2015, 17:16
Ответы с готовыми решениями:

Toolbar для всех activity
Добрый день, дорогие форумчане. Сразу обмолвлюсь, что занимаюсь ровно 1-2 недели разработкой...

Создание фона для Activity
Хочу создать фон для активити.. в дальнейшем буду его сжимать до...

Создание Activity в другом Activity
Нормально ли создавать экземпляр какого-либо Activity в текущем Activity? Дело в том, что код,...

Создание Activity
Добрый день! При создании нового проекта возникает проблема - Eclipse ту хочет создавать Activity...

Создание нового Activity
Прошел примерно день как скачал Android Studio, многому научился, и затупил как обычно на каком то...

4
Netscape
374 / 361 / 52
Регистрация: 02.10.2009
Сообщений: 712
Записей в блоге: 4
25.05.2015, 17:20 2
А чем смысл такого подхода?
Можно создать одну активити и много фрагментов, потом их показывать в нужном порядке.
0
Tester64
397 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
25.05.2015, 19:40 3
Цитата Сообщение от Rembo88 Посмотреть сообщение
Возможно ли и имеет ли смысл создать некую супер-Activity
Не знаю как с фрагментами (пока активно не использую), но идея не плохая! Я сделал себе "супер активити" чисто "под себя". Запихнул туда управление менюшками - не надо кучу лишних строк каждый раз писать. Встроил свою верхнюю панель своего дизайна. Встроил уловитель и обработчик ошибок... Теперь достаточно унаследовать и все мои активити имеют одинаковый дизайн и функциональность. И глобально расширять функциональность активити проще - не приходится после этого каждую активити перебирать. А когда активити больше 4х-5ти... и конечные активити не так захламлены получаются. Остается ТОЛЬКО необходимый код - читать проще.
0
YuraAAA
1582 / 1322 / 283
Регистрация: 25.10.2009
Сообщений: 3,436
Записей в блоге: 2
25.05.2015, 19:51 4
Tester64, Вы всё правильно делаете
Но всё же лучше использовать фрагменты
0
Rembo88
0 / 0 / 0
Регистрация: 05.10.2013
Сообщений: 39
31.05.2015, 12:43  [ТС] 5
Ничего лучше не придумал как создать вот такой вот супер класс для Activity с одним фрагментом.

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
public abstract class BaseActivityWithOneFragment extends FragmentActivity {
 
    Fragment fragment;
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(setActivityLayout());
 
        FragmentManager fragmentManager = getSupportFragmentManager();
        FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
        if (fragment != null) {
        fragment = initFragment();
        fragmentTransaction.add(setContainerForFragment(), fragment, "fragment");
        fragmentTransaction.commit();
        } else {
             Log.d("DEBUG", "В методе initFragment() не проинициализирован объект фрагмента")
        }
    }
    
    /** Класс-наследник должен вернуть разметку для Activity */
    protected abstract int setActivityLayout();
 
    /** Класс-наследник должен вернуть id контейнера,куда поместится фрагмент */
    protected abstract int setContainerForFragment();
 
    /** Класс-наследник должен вернуть объект фрагмента,который будет вешаться на Activity */
    protected abstract Fragment initFragment();
0
31.05.2015, 12:43
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
31.05.2015, 12:43

Создание и вызов второго Activity
Добрый день! Немного запутался с ООП в проекте суть в следующем: Имеем главное Activity: ...

Как сделать чтобы bluetooth соединение работало на всех activity?
Подскажите как сделать чтобы bluetooth соединение работало на всех activity

Создание сервера, запускающего разные Activity
Добрый день. Возникла такая проблема. Есть приложение под андроид, которое содержит MainActivity, в...


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

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

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