requestWindowFeature可以设置的值有:

         1.DEFAULT_FEATURES:系统默认状态,一般不需要指定
         2.FEATURE_CONTEXT_MENU:启用ContextMenu,默认该项已启用,一般无需指定
         3.FEATURE_CUSTOM_TITLE:自定义标题。当需要自定义标题时必须指定。如:标题是一个按钮时
         4.FEATURE_INDETERMINATE_PROGRESS:不确定的进度
         5.FEATURE_LEFT_ICON:标题栏左侧的图标
         6.FEATURE_NO_TITLE:无标题
         7.FEATURE_OPTIONS_PANEL:启用“选项面板”功能,默认已启用。
         8.FEATURE_PROGRESS:进度指示器功能
         9.FEATURE_RIGHT_ICON:标题栏右侧的图标

效果图:

 default:

progress

no title:

 lefticon:

 fullscreen:

 indeterminate_progress:

customtitle:

代码:

  1. package com.my;
  2. import android.app.Activity;
  3. import android.os.Bundle;
  4. import android.os.Handler;
  5. import android.os.Message;
  6. import android.view.Window;
  7. import android.view.WindowManager;
  8. public class WindowFeatureDemoActivity extends Activity {
  9. @Override
  10. public void onCreate(Bundle savedInstanceState) {
  11. super.onCreate(savedInstanceState);
  12. // requestWindowFeature();的取值
  13. // 1.DEFAULT_FEATURES:系统默认状态,一般不需要指定
  14. // 2.FEATURE_CONTEXT_MENU:启用ContextMenu,默认该项已启用,一般无需指定
  15. // 3.FEATURE_CUSTOM_TITLE:自定义标题。当需要自定义标题时必须指定。如:标题是一个按钮时
  16. // 4.FEATURE_INDETERMINATE_PROGRESS:不确定的进度
  17. // 5.FEATURE_LEFT_ICON:标题栏左侧的图标
  18. // 6.FEATURE_NO_TITLE:无标题
  19. // 7.FEATURE_OPTIONS_PANEL:启用“选项面板”功能,默认已启用。
  20. // 8.FEATURE_PROGRESS:进度指示器功能
  21. // 9.FEATURE_RIGHT_ICON:标题栏右侧的图标
  22. // ========================FEATURE_INDETERMINATE_PROGRESS:不确定的进度
  23. // showFEATURE_INDETERMINATE_PROGRESS();
  24. // // =====================FEATURE_CUSTOM_TITLE
  25. // showFEATURE_CUSTOM_TITLE();
  26. // // ======================== FEATURE_LEFT_ICON:标题栏左侧的图标
  27. // showFEATURE_LEFT_ICON();
  28. // // ======================FEATURE_NO_TITLE
  29. // showFEATURE_NO_TITLE();
  30. // =================================FEATURE_PROGRESS
  31. showFEATURE_PROGRESS();
  32. }
  33. private void showFEATURE_INDETERMINATE_PROGRESS() {
  34. requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS);
  35. setContentView(R.layout.main);
  36. getWindow().setFeatureInt(Window.FEATURE_INDETERMINATE_PROGRESS, R.layout.progress);
  37. // 必须得加上否则显示不出效果 可以通过这个在以后设置显示或隐藏
  38. setProgressBarIndeterminateVisibility(true);
  39. }
  40. private void showFEATURE_CUSTOM_TITLE() {
  41. // 自定义标题。当需要自定义标题时必须指定。如:标题是一个按钮时
  42. requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
  43. setContentView(R.layout.main);
  44. getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.customtitle);
  45. }
  46. private void showFEATURE_LEFT_ICON()
  47. {
  48. requestWindowFeature(Window.FEATURE_LEFT_ICON);
  49. setContentView(R.layout.main);
  50. getWindow().setFeatureDrawableResource(Window.FEATURE_LEFT_ICON,
  51. R.drawable.icon);
  52. }
  53. private void showFEATURE_NO_TITLE()
  54. {
  55. requestWindowFeature(Window.FEATURE_NO_TITLE);
  56. setContentView(R.layout.main);
  57. // 加上这句设置为全屏 不加则只隐藏title
  58. getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
  59. WindowManager.LayoutParams.FLAG_FULLSCREEN);
  60. }
  61. private void showFEATURE_PROGRESS()
  62. {
  63. requestWindowFeature(Window.FEATURE_PROGRESS);
  64. setProgressBarVisibility(true);
  65. setContentView(R.layout.main);
  66. setTitle("");
  67. getWindow().setFeatureInt(Window.FEATURE_PROGRESS, Window.PROGRESS_VISIBILITY_ON);
  68. // 通过线程来改变ProgressBar的值
  69. new Thread(new Runnable() {
  70. public void run() {
  71. for (int i = 0; i < 10; i++) {
  72. try {
  73. Thread.sleep(1000);
  74. Message m = new Message();
  75. m.what = (i + 1) * 20;
  76. WindowFeatureDemoActivity.this.myMessageHandler.sendMessage(m);
  77. } catch (Exception e) {
  78. e.printStackTrace();
  79. }
  80. }
  81. }
  82. }).start();
  83. }
  84. Handler myMessageHandler = new Handler() {
  85. // @Override
  86. public void handleMessage(Message msg) {
  87. // 设置标题栏中前景的一个进度条进度值
  88. setProgress(100 * msg.what);
  89. // 设置标题栏中后面的一个进度条进度值
  90. setSecondaryProgress(100 * msg.what + 10);
  91. super.handleMessage(msg);
  92. }
  93. };
  94. }

android requestWindowFeature使用详解的更多相关文章

  1. Android Fragment用法详解(2)--动态添加Fragment

    在上一篇文章<Android Fragment用法详解(1)--静态使用Fragment>我们讲解了Fragment的最简单的用法.这次我们来说一说Fragment复杂一丢丢的用法.在代码 ...

  2. android:ToolBar详解

    android:ToolBar详解(手把手教程) 泡在网上的日子 发表于 2014-11-18 12:49 第 124857 次阅读 ToolBar 42 来源 http://blog.mosil.b ...

  3. Android之canvas详解

    首先说一下canvas类: Class Overview The Canvas class holds the "draw" calls. To draw something, y ...

  4. 【转】Android Canvas绘图详解(图文)

    转自:http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2012/1212/703.html Android Canvas绘图详解(图文) 泡 ...

  5. Android 核心分析 之八Android 启动过程详解

    Android 启动过程详解 Android从Linux系统启动有4个步骤: (1) init进程启动 (2) Native服务启动 (3) System Server,Android服务启动 (4) ...

  6. Android GLSurfaceView用法详解(二)

    输入如何处理       若是开发一个交互型的应用(如游戏),通常需要子类化 GLSurfaceView,由此可以获取输入事件.下面有个例子: java代码: package eoe.ClearTes ...

  7. Android编译过程详解(一)

    Android编译过程详解(一) 注:本文转载自Android编译过程详解(一):http://www.cnblogs.com/mr-raptor/archive/2012/06/07/2540359 ...

  8. android屏幕适配详解

    android屏幕适配详解 官方地址:http://developer.android.com/guide/practices/screens_support.html 一.关于布局适配建议 1.不要 ...

  9. Android.mk文件详解(转)

    源:Android.mk文件详解 从对Makefile一无所知开始,折腾了一个多星期,终于对Android.mk有了一个全面些的了解.了解了标准的Makefile后,发现Android.mk其实是把真 ...

随机推荐

  1. linux在shell中获取时间

    linux在shell中获取时间 获得当天的日期 date +%Y-%m-%d 输出: 2011-07-28 将当前日期赋值给DATE变量DATE=$(date +%Y%m%d) 有时候我们需要使用今 ...

  2. Unity NGUI 网络斗地主 -界面制作

    Unity NGUI 网络斗地主 -界面制作 源文件在群(63438968群共享!) @灰太龙 这一节说一下NGUI的界面摆放,并且教会大家使用NGUI的自适应功能! 在这里感谢@Gamer,是他给我 ...

  3. 一步一步学习SignalR进行实时通信_8_案例2

    原文:一步一步学习SignalR进行实时通信_8_案例2 一步一步学习SignalR进行实时通信\_8_案例2 SignalR 一步一步学习SignalR进行实时通信_8_案例2 前言 配置Hub 建 ...

  4. paip.提升用户体验-----c++ gcc 命令在notepad++扩展中的配置..

    paip.提升用户体验-----c++ gcc 命令在notepad++扩展中的配置.. 作者Attilax ,  EMAIL:1466519819@qq.com  来源:attilax的专栏 地址: ...

  5. HDU 4185 Oil Skimming

    题目大意:在一个N*N的矩阵里寻找最多有多少个“##”(横着竖着都行).     题目分析:重新构图,直接以相邻的两个油井算中间算以条边,然后进行匹配,看看两两之间最多能匹配多少对. #include ...

  6. Xmanager4使用记录

    想在windows下远程登录到了Linux桌面,但又不想装vnc server,况且根据同学的实践,vnc的桌面在远程和本地都能看得到,这个似乎不太好.   google到xmanager,装了个测试 ...

  7. 数位DP:SPOJ KPSUM - The Sum

    KPSUM - The Sum One of your friends wrote numbers 1, 2, 3, ..., N on the sheet of paper. After that ...

  8. Delphi TdxComponentPrinter页头页脚的设定

    TdxComponentPrinter页头页脚的设定 抄一段备忘.用程序控制也一样.如果是这样,那么 双击TdxComponentPrinter控件,在出现的窗口中,点击ADD,建立一个与TcxGri ...

  9. JQuery固定表头插件fixedtableheader源码注释

    在开发XX车站信息系统时,需要将大量数据显示在一个巨大的表格内部,由于表格是一个整体,无法分页,加之数据很多,超出一屏,为了方便用户,决定使用固定表头的插件,经过测试,发现JQuery 插件:fixe ...

  10. hdu 4632区间 dp

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4632 用点容斥原理转移状态, dp[i][j]=dp[i+1][j]+dp[i][j-1]-dp[i+ ...