Window类,位于代码树frameworks\base\core\java\android\view\Windowjava.java文件。连同注释,这个文件总共一千多行,它概括了Android窗口的基本属性和基本功能。


Window属性列举如下: FEATURE_OPTIONS_PANEL = 0; 功能不明,参见后面的说明(默认使能) FEATURE_NO_TITLE = 1; 无标题栏 FEATURE_PROGRESS = 2; 在标题栏上显示加载进度,例如webview加载网页时(条状进度条) FEATURE_LEFT_ICON = 3; 在标题栏左侧显示一个图标 FEATURE_RIGHT_ICON = 4; 在标题栏右侧显示一个图标 FEATURE_INDETERMINATE_PROGRESS = 5; 不确定的进度(圆圈状等待图标) FEATURE_CONTEXT_MENU = 6; 上下文菜单,相当于PC上的右键菜单(默认使能) FEATURE_CUSTOM_TITLE = 7; 自定义标题栏,该属性不能与其他标题栏属性合用 FEATURE_OPENGL = 8; 如果开启OpenGL,那么2D将由OpenGL处理(OpenGL中2D是3D的子集) PROGRESS_VISIBILITY_ON = -1; 进度条可见 PROGRESS_VISIBILITY_OFF = -2; 进度条不可见 PROGRESS_INDETERMINATE_ON = -3; 开启不确定模式 PROGRESS_INDETERMINATE_OFF = -4; 关闭不确定模式 PROGRESS_START = 0; 第一进度条的最小值 PROGRESS_END = 10000; 第一进度条的最大值 PROGRESS_SECONDARY_START = 20000; 第二进度条的最小值 PROGRESS_SECONDARY_END = 30000; 第二进度条的最大值
*说明:FEATURE_OPTIONS_PANEL的意思大概是:当用户选中菜单时,窗口将调用onOptionsItemSelected函数,以处理菜单功能。如果没有FEATURE_OPTIONS_PANEL选项,那么菜单就不响应了?没试过,网上也没找到。
应用示例: 1、隐藏标题栏 requestWindowFeature(Window.FEATURE_NO_TITLE);
2、在标题栏显示进度条 requestWindowFeature(Window.FEATURE_PROGRESS); setContentView(R.layout.progressbar_1); setProgressBarVisibility(true);
final ProgressBar progressHorizontal = (ProgressBar) findViewById(R.id.progress_horizontal); setProgress(progressHorizontal.getProgress() * 100); setSecondaryProgress(progressHorizontal.getSecondaryProgress() * 100);
3、使用自定义标题栏 requestWindowFeature(Window.FEATURE_CUSTOM_TITLE); setContentView(R.layout.xxx); getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE,R.layout.my_title_bar);
4、清除标题栏内容,而区域保留 ((ViewGroup) getWindow().findViewById(com.android.internal.R.id.title_container)).removeAllViews();
5、隐藏标题栏 ((ViewGroup)getWindow(). findViewById(com.android.internal.R.id.title_container)).setVisibility(View.GONE);
6、显示标题栏 ...setVisibility(View.VISIBLE);
其他注意事项 (1) requestWindowFeature()要在setContentView()之前调用; (2) 设置各种Feature,是具有排它性的,一旦设置,后续不可更改为别的类型; (3) 当使用TabHost(由ActivityGroup派生)时,各个Tab里的Activity,要么都是NO_TITLE,要么都是CUSTOM_TITLE,无法分别进行设置。

更多相关文章

  1. 00015-相对布局位置属性
  2. 修改android桌面图标默认大小
  3. 控件属性:
  4. Android 文件读写 + sdcard + 文件的属性
  5. Android之布局属性
  6. android菜单Tips
  7. TextView中ellipsize属性焦点异常处理

随机推荐

  1. MongoDB Go Driver使用帮助文档
  2. vmware如何将主机硬盘挂载到虚拟机
  3. MongoDB 排序内存超过 32M 限制
  4. Ubuntu中安装vmware tools工具
  5. MongoDB基础命令及操作 (仅学习)
  6. Oralce数据库设计规范V3
  7. 2.4.18预读算法详解
  8. 微服务架构 vs. SOA架构
  9. 读书 | Making Sense of Stream Processi
  10. Elasticsearch从入门到放弃:索引基本使用