我有以全屏模式显示的"活动":
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_drawers_widget);
setFullscreen();
}
private void setFullscreen() {
if (Build.VERSION.SDK_INT < 19) {
this.getWindow().getDecorView().setSystemUiVisibility(View.GONE);
} else {
View decorView = getWindow().getDecorView();
int uiOptions = View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY | View.SYSTEM_UI_FLAG_FULLSCREEN | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION;
decorView.setSystemUiVisibility(uiOptions);
}
}
它运行良好,直到我通过startActivityForResult:调用外部应用程序
@Override
public void onClick(View v) {
Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
intent.setType("file/*");
startActivityForResult(intent, 1);
}
//somewhere else
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
//some code
setFullscreen(); //probably not necessery
}
所有的系统控制都是可见的,这是我不想要的。请帮忙。
太棒了!
如果想要显示全屏,只需将此代码粘贴到oncreate函数中。。。
if (Build.VERSION.SDK_INT <= 16) {
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
}
getActionBar().hide();
将此代码放入AndroidManifest.xml文件中。
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@android:style/Theme.Light.NoTitleBar.Fullscreen" >
<activity android:name="com.test.activity.SplashActivity" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
全屏模式的重要第5行。