requestWindowFeature()使用简介

来源:互联网 发布:长绸扇子淘宝 编辑:程序博客网 时间:2024/04/30 12:57

一、requestWindowFeature()功能及参数简介

  • 功能:设置当前窗体的显示特征(如全屏、无标题等)
  • 参数:Window类中定义的常量,每个常量对应一种窗体显示类型

二、介绍源码中定义的相关参数

  1. 首先引用源码中所有以FEATURE_开始的常量参数,后面展示实际应用效果

    public abstract class Window {    // 默认配置    public static final int FEATURE_OPTIONS_PANEL = 0;    // 无标题    public static final int FEATURE_NO_TITLE = 1;    // 进度指示器功能    public static final int FEATURE_PROGRESS = 2;    // 标题栏左侧图标    public static final int FEATURE_LEFT_ICON = 3;    // 标题栏右侧图标    public static final int FEATURE_RIGHT_ICON = 4;    // 不确定的进度     public static final int FEATURE_INDETERMINATE_PROGRESS = 5;    // 默认配置. 启用context menu    public static final int FEATURE_CONTEXT_MENU = 6;    // 自定义标题. Cannot combine with other title features    public static final int FEATURE_CUSTOM_TITLE = 7;    // 用ActionBar代替TitleBar    public static final int FEATURE_ACTION_BAR = 8;    // 要求ActionBar覆盖窗口内容    public static final int FEATURE_ACTION_BAR_OVERLAY = 9;    // 当一个动作栏不存在,指定操作的行为模式    public static final int FEATURE_ACTION_MODE_OVERLAY = 10;    public static final int FEATURE_SWIPE_TO_DISMISS = 11;    public static final int FEATURE_CONTENT_TRANSITIONS = 12;    public static final int FEATURE_ACTIVITY_TRANSITIONS = 13;    .    .    .}
  2. 实际应用效果的展示

A默认显示:带标题栏

@Override protected void onCreate(Bundle savedInstanceState) {    requestWindowFeature(Window.FEATURE_OPTIONS_PANEL);    super.onCreate(savedInstanceState);    setContentView(R.layout.activity_main);}
@Override protected void onCreate(Bundle savedInstanceState) {    super.onCreate(savedInstanceState);    setContentView(R.layout.activity_main);}

上面贴出的两段代码效果相同,如图
这里写图片描述


B无标题

@Override protected void onCreate(Bundle savedInstanceState) {    requestWindowFeature(Window.FEATURE_NO_TITLE);    super.onCreate(savedInstanceState);    setContentView(R.layout.activity_main);}

这里写图片描述


C全屏

@Override protected void onCreate(Bundle savedInstanceState) {    super.onCreate(savedInstanceState);    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);    setContentView(R.layout.activity_main);}

这里写图片描述


以上。如有错误和疑问,欢迎指正提出。
catface.wyh@gmail.com

0 0
原创粉丝点击