Лучший способ использовать attachBaseContext для всех действий без наследования

#android #inheritance #android-activity #composition

#Android #наследование #android-активность #композиция

Вопрос:

Я хочу использовать SDK, который говорит мне переопределить attachBaseContext все действия или создать BaseActivity

 public class BaseActivity extends AppCompatActivity {
    @Override
    protected void attachBaseContext(Context newBase) {
       super.attachBaseContext(LibraryX.wrap(newBase));
    }
}
  

Но я не хочу использовать наследование для всех своих действий. Мы отходим от использования BaseActivity. Я огляделся и искал что-то, что могло бы помочь мне реализовать это по-другому.

К сожалению ActivityLifecycleCallbacks , не предоставляет attachBaseContext метод. В противном случае я закончил.

Это хороший способ сделать это без использования наследования?

Комментарии:

1. Нет, потому что вам нужно вызвать super метод, который может быть выполнен только через наследование.

2. Ну, вы хотите вызвать метод базового класса, когда производный класс вызывается тем же методом … итак, ответ очевиден… вы можете сделать это только по наследству… что не так BaseActivity ?

Ответ №1:

Нет. Невозможно сделать это без наследования, поскольку вам абсолютно необходимо вызвать метод super, и нет API для доступа к этому методу извне (например, слушатель)