1

だから私は活動にウェブビューを持っています

ユーザーがアクティビティを開いたときのデバイスの向きと同じ向きを維持する必要があります(したがって、アクティビティが開かれたときに風景が開かれた場合->それを維持します!..ポートレートの場合->それを維持します)

そう

  • XMLマニフェスト表記は必要ありません..特定の向きを強制したくありません.開いたままにしておくだけです!

これらの 2 つの暫定的なものは何もしません。

 public void onConfigurationChanged(Configuration newConfig) {
    super.onConfigurationChanged(null);

また

public void onConfigurationChanged(Configuration newConfig) {
      newConfig.orientation = getResources().getConfiguration().orientation;
      super.onConfigurationChanged(newConfig);

だからアイデア??

4

4 に答える 4

0

アクティビティの下のマニフェストにandroid:configChanges = "orientation"を配置すると、アクティビティが画面の向きの変更自体を処理することをAndroidに通知します。

于 2012-05-22T11:48:49.907 に答える
0

なぜその機能を実装したいのかわかりませんが、これはうまくいくはずです:

  @Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    if(savedInstanceState == null) // you only want to save orientation when you are loading the activity for the first time
    {
        ((MyApp)getApplication()).orientation = getResources().getConfiguration().orientation; // I saved the orientation in the application class, but you can save it anywhere you like except in "this"
        Log.d("test", "orientation in onCreate: "+((MyApp)getApplication()).orientation);
    }

}
@Override
protected void onResume() {
    super.onResume();
    Log.d("test", "setContentview with orientation in onResume "+((MyApp)getApplication()).orientation);
    if(((MyApp)getApplication()).orientation==Configuration.ORIENTATION_LANDSCAPE)
    {
        setContentView(R.layout.my_layout_portrait);
    }
    else if(((MyApp)getApplication()).orientation ==Configuration.ORIENTATION_PORTRAIT)
    {
        setContentView(R.layout.my_layout_landscape);
    }
}

余談ですが、そのような向きを強制するのは私には悪い考えです。

于 2012-05-22T12:14:51.340 に答える
0

アクティビティの方向を修正する場合

set Man-feast アクティビティ

android:screenOrientation="portrait"

または

android:screenOrientation="landscape"
于 2012-05-22T11:44:51.920 に答える
0

Android のアクティビティ ライフサイクルを読む必要があります。アクティビティを再度開くと、新しいインスタンスが構築されます。したがって、「以前の」オリエンテーションはありませんでした。アクティビティを一時停止したときと同じ方向が必要な場合は、以前の方向をライフサイクルを通じて持続する値に保存する必要があります。

編集:例を機能させたい場合は、マニフェストで宣言する必要があります。

于 2012-05-22T11:45:21.687 に答える