2016-04-11 11 views
0

私はをロードするactivityを持っています。私はfragment layout(セクションAとB)の中に2つのセクションがあると言いますが、私は風景に切り替えるとセクション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 
     } 
関連する問題