4

私は ActionBarSherlock ライブラリを使用しています。スタイルがフルスクリーンに設定された CameraActivity があります。

<activity
   android:name="pl.toptof.android.ui.activity.CameraActivity"
   android:theme="@style/Theme.Styled.NoActionBar.fullScreen"
   android:screenOrientation="portrait">
</activity>

そのようなこのアクティビティから新しいアクティビティを開始すると:

Intent intent = new Intent(CameraActivity.this, PreviewActivity.class);
intent.putExtra("PhotoURI",takenPhotoURL);
intent.putExtra("voteID",voteId);
CameraActivity.this.startActivity(intent);

アクティビティがフルスクリーン モードのままのように見え、ステータス バーが表示され、アクション バーが覆われています。プレビュー アクティビティのテーマは次のとおりです。

<application
        android:name="(...)"
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:largeHeap="true"
        android:hardwareAccelerated="true"
        android:theme="@style/Theme.Styled">

<activity
            android:name="pl.toptof.android.ui.activity.PreviewActivity"
            android:screenOrientation="portrait">
</activity>

この問題は、Sony Xperia Z デバイスでのみ発生します。HTC Legend、HTC One、Nexus 4、Samsung Galaxy S3、Nexus 7、Samsung Galaxy Note では問題なく動作します。そしてその画面:
ステータス バーがアクション バーを覆う

それを修正する方法はありますか?

4

1 に答える 1

2

問題は修正されました。私がやったことは次のとおりです。

新しいアクティビティを開始するこの方法を変更しました

Intent intent = new Intent(CameraActivity.this, PreviewActivity.class);
intent.putExtra("PhotoURI",takenPhotoURL);
intent.putExtra("voteID",voteId);
CameraActivity.this.startActivity(intent);

追加

getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);

startActivity メソッドの前。少しトリッキーですが、アクティビティが終了する前にステータス バーが下にスライドし、すべて正常に動作します。CameraActivity に戻る/再起動すると、FLAG_FULLSCREEN onCreate が再び取得されます。

于 2013-10-16T10:12:10.640 に答える