私は1つの主なアクティビティと8つのフラグメントを持つアプリを持っています。マニフェストファイルでは、次のような向きを設定しました:Androidのフラグメントで異種オリエンテーションを使用する
android:screenOrientation="landscape"
8つの断片のうちの6つについて、この方向は問題ありません。しかし、私はちょうど2つの断片で方向を変更する必要があります。しかし、私はフラグメントに行くと、このコードを使用する場合How to set different orientation of fragment in activity?:として私は検索と同じaswerとのカップルの記事を発見した
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
getActivity().setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
// Inflate the layout for this fragment
return inflater.inflate(R.layout.fragment_name, container, false);
}
それが持っているようにアプリは、縦向きセットバック最初の画面に戻り異なる向きの設定でアプリを再起動しました。この後に開いたすべての画面は、アプリを閉じて再起動するまで縦向きに設定されます。
これらの変更を加えて、すべてのランドスケープフラグメントが正常にロードされます。しかし、2つのポートレイトフラグメントは、最初の画面に戻りますが、ポートレートモードで読み込まれます。 –