Как мне создать общий код для частей деятельности Android? - PullRequest
8 голосов
/ 01 февраля 2011

В моем приложении 14 видов деятельности.Из этого действия 9 содержит пользовательскую строку заголовка и панель вкладок.поэтому здесь мне нужно написать этот общий код в одном месте вместо избыточного кода в каждом действии, которое содержит настраиваемую строку заголовка и код панели вкладок (т. е. макет и код, относящийся к конкретному виду деятельности)

Каковы возможные способы сделать этоэто?

Ответы [ 2 ]

11 голосов
/ 01 февраля 2011

Обычный способ:

  • Создайте суперкласс, например, CommonActivity, который расширяет Activity
  • Поместите шаблонный код внутри этого класса
  • Затем сделайте ваши действия расширенными CommonActivity вместо Activity:

Вот простой пример:

public class CommonActivity extends Activity{
    public void onCreate(Bundle b){
        super.onCreate(b);
        // code that is repeated
    }

    protected void moreRepeatitiveCode(){
    }
}

А ваши текущие действия:

public class AnActivity extends CommonActivity{
    public void onCreate(Bundle b){
        super.onCreate(b);
        // specific code
    }
}
1 голос
/ 23 февраля 2012

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

Прав ли я с этим примером ?

Конечно, если нам это нужно, какActivity, предложенное выше, будет работать идеально, если мы позаботимся о жизненном цикле Activity, и мы не забудем добавить его в файл манифеста .

В общем, действия должны простосоздавать пользовательский интерфейс, обрабатывать события и делегировать бизнес-логику и / или другие действия другим компонентам нашего приложения.

Приветствия

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...