2016-04-11 3 views
0

У меня есть activity, в котором я загружаю fragment. Допустим, у меня есть два раздела внутри fragment layout (разделы A и B), но пока я переключаюсь на пейзаж, мне нужно показать только раздел A. Как я узнаю изменение ориентации внутри фрагмента.Ориентация ориентации внутри фрагмента

+0

http://stackoverflow.com/questions/18268218/change-screen-orientation-programatically-using-a-button – Apurva

ответ

0

вы можете переопределить onConfigurationChanged, чтобы получить уведомление, когда ориентация изменилась добавить код, приведенный ниже в классе фрагмент:

@Override public void onConfigurationChanged(Configuration newConfig) { 
    super.onConfigurationChanged(newConfig); 
    if(newConfig.orientation == ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE){ 
     //landscape 
    }else{ 
     //portrait 
    } 
} 
+0

спасибо, что это сработало – bhaskar

0

Когда ориентация экрана изменилась Fragment будет разрушен и создан вновь, так onDestroy() и onCreate(). в вашем onCreate() или onCreateView() (или там, где вам нужно), вы можете проверить текущий поворот экрана со следующим кодом:

int screenRotation = ((WindowManager) getContext().getSystemService(Context.WINDOW_SERVICE)).getDefaultDisplay().getRotation(); 
     if(screenRotation == Surface.ROTATION_90 || screenRotation == Surface.ROTATION_270) { 
      //LANDSCAPE 
     } else { 
      //PORTRAIT 
     } 
Смежные вопросы