По сути, я создал новый фрагмент с помощью Extended из другого фрагмента, потому что я просто хочу переопределить какой-то метод, но все еще продолжаю использовать его.
Оригинальный фрагмент
public class RestaurantListFragment extends BaseFragment {
@Override
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
Log.d(TAG, " :Original :onActivityCreated");
}
}
Расширяет фрагмент.
public class RestaurantByFoodListFragment extends RestaurantListFragment {
@Override
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
Log.d(TAG, " :Modify :onActivityCreated");
}
}
Итак, когда я вызываю фрагмент extends из PagerAdapter
, как это
@Override
public Fragment getItem(int position) {
switch (position) {
case 0:
case 1:
Log.d(TAG, " :getItem");
restaurantByFoodListFragment = new RestaurantByFoodListFragment();
restaurantByFoodListFragment.setFoodId(this.foodId);
return restaurantByFoodListFragment;
default:
return null;
}
}
Похоже, что onActivityCreated
внутри обоих вызываемых фрагментов (я просто хочу, чтобы вызывал extends)
Это мой журнал.
Res List Fragment: :Original :onActivityCreated
Res By Food Fragment: :Modify :onActivityCreated
Res List Fragment: :Original :onActivityCreated
Res By Food Fragment: :Modify :onActivityCreated
Так возможно ли это только для триггера onActivityCreated
внутри расширенного фрагмента (RestaurantByFoodListFragment
) без триггера исходного фрагмента (RestaurantListFragment
)?
Спасибо!