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

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

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

Господа,доброго времени суток!
Возник следующий вопрос: у меня есть несколько активностей(activity1, activity2, activity3), каждая из них содержит по одному фрагменту(fragment1, fragment2, fragment3).
Возможно ли и имеет ли смысл создать некую супер-Activity с фрагментом, наследники которой смогут реализовывать свои специфичные activity+fragment ?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
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
Прошел примерно день как скачал Android Studio, многому научился, и затупил как...

4
Netscape
374 / 361 / 52
Регистрация: 02.10.2009
Сообщений: 712
Записей в блоге: 4
25.05.2015, 17:20 #2
А чем смысл такого подхода?
Можно создать одну активити и много фрагментов, потом их показывать в нужном порядке.
0
Tester64
396 / 357 / 46
Регистрация: 22.05.2013
Сообщений: 2,518
25.05.2015, 19:40 #3
Цитата Сообщение от Rembo88 Посмотреть сообщение
Возможно ли и имеет ли смысл создать некую супер-Activity
Не знаю как с фрагментами (пока активно не использую), но идея не плохая! Я сделал себе "супер активити" чисто "под себя". Запихнул туда управление менюшками - не надо кучу лишних строк каждый раз писать. Встроил свою верхнюю панель своего дизайна. Встроил уловитель и обработчик ошибок... Теперь достаточно унаследовать и все мои активити имеют одинаковый дизайн и функциональность. И глобально расширять функциональность активити проще - не приходится после этого каждую активити перебирать. А когда активити больше 4х-5ти... и конечные активити не так захламлены получаются. Остается ТОЛЬКО необходимый код - читать проще.
0
YuraAAA
1578 / 1319 / 282
Регистрация: 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
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
31.05.2015, 12:43

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

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

Динамическое создание элементов на другом activity
В чем суть: Нажимаем кнопку в лэйауте1, после чего создается ImageButton на...


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

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

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