如果android中采用activity设计界面,想去掉所有界面的标题,我们通常会在onCreate方法中添加折断代码:
requestWindowFeature(Window.FEATURE_NO_TITLE);
但是如果这款软件每个界面都是你由Activity设计的,每个界面都不设置标题,那么每个Activity中添加这样一段代码酒会很麻烦,为了一劳永逸,我们可以设置一个BaseActivity,然后让所有Activity都extends BaseActivity。
BaseActivity实现如下:
public class BaseActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
requestWindowFeature(Window.FEATURE_NO_TITLE);
//让屏幕保持不暗不关闭,如果让所有Activity都保持唤醒状态就直接即成继承BaseActivity
getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
//当在Android的layout设计里面如果输入框过多,则在输入弹出软键盘的时候,下面的输入框会有一部分被软件盘挡住,从而不能获取焦点输入。
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN);
//setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);//横屏
//设置竖屏代码:setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);//竖屏
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
super.onCreate(savedInstanceState);
}
}
以上是 BaseActivity,它具有去掉标题,保持屏幕唤醒,保持竖屏,防止输入框弹出是将屏幕下方控件上移的效果
那么只要继承了它,就拥有以上所有属性。
使用很简单,直接继承,例如:
public class MainActivityextends BaseActivity
去标题前后对比: