Android程序中要设置全屏包括两个部分:窗口全屏和Activity全屏
窗口全屏是指隐藏系统顶部用来显示时间、电量、信号等信息的标题栏,Activity全屏是指隐藏程序的标题栏(只需requestWindowFeature(Window.FEATURE_NO_TITLE);//不显示程序的标题栏)。这里讨论的是第二种。我们可以在程序代码中设置,也可以通过修改AndroidManifest.xml文件来实现。
1.修改程序代码。
我们需要在Activity的onCreate方法中添加相应的代码。请注意代码的位置,要在setContentView()方法之前调用哦。public class Home extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);//不显示程序的标题栏
getWindow().setFlags(WindowManager.LayoutParams. FLAG_FULLSCREEN ,WindowManager.LayoutParams. FLAG_FULLSCREEN);//不显示系统的标题栏
setContentView(R.layout.main);
}
}
2.修改AndroidManifest.xml。我们可以修改标签或标签的属性值来实现。他们的区别是修改标签后所有的Activity都会全屏,而修改后只针对当前的Activity有效。注
意:android:theme="@android:style/Theme.NoTitleBar.Fullscreen"的位置,我在两处都设置上
了,大家可以根据实际状况做出调整。<?xml version="1.0" encoding="utf-8"?>
package="org.dw.enotes"
android:versionCode="1"
android:versionName="1.0">
android:label="@string/app_name"
android:theme="@android:style/Theme.NoTitleBar.Fullscreen">
android:name=".activity.Hello"
android:label="@string/app_name"
android:theme="@android:style/Theme.NoTitleBar.Fullscreen">
要动态的切换全屏与非全屏,那么则只能采用第一种方法。package com.screen;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.WindowManager;
import android.view.View.OnClickListener;
import android.widget.Button;
public class MainActivity extends Activity {
private boolean isFulllScreen = false;
private Button button;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
button = (Button)findViewById(R.id.button);
button.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
isFulllScreen = !isFulllScreen;
if (isFulllScreen) {
button.setText(getResources().getText(R.string.exit_full_screen));
WindowManager.LayoutParams params = getWindow().getAttributes();
params.flags |= WindowManager.LayoutParams.FLAG_FULLSCREEN;
getWindow().setAttributes(params);
getWindow().addFlags(WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS);
} else {
button.setText(getResources().getText(R.string.full_screen));
WindowManager.LayoutParams params = getWindow().getAttributes();
params.flags &= (~WindowManager.LayoutParams.FLAG_FULLSCREEN);
getWindow().setAttributes(params);
getWindow().clearFlags(WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS);
}
}
});
}
}