开发中的 全屏、自定义标题、更改图标、和标题进度显示灯的处理 需要 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:标题栏右侧的图标
1 不确定的进度条
//进度条 不确定, private void showFEATURE_INDETERMINATE_PROGRESS() { requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS); setContentView(R.layout.main); getWindow().setFeatureInt(Window.FEATURE_INDETERMINATE_PROGRESS, R.layout.progress); // 必须得加上否则显示不出效果 可以通过这个在以后设置显示或隐藏 setProgressBarIndeterminateVisibility(true); }
2 设置自定义的title
// 设置自定义的title 布局 private void showFEATURE_CUSTOM_TITLE() { // 自定义标题。当需要自定义标题时必须指定。如:标题是一个按钮时 requestWindowFeature(Window.FEATURE_CUSTOM_TITLE); setContentView(R.layout.main); getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.customtitle); }
3 显示左侧图标
//左侧显示图标 private void showFEATURE_LEFT_ICON() { requestWindowFeature(Window.FEATURE_LEFT_ICON); setContentView(R.layout.main); getWindow().setFeatureDrawableResource(Window.FEATURE_LEFT_ICON, R.drawable.icon); }
4 隐藏title 和全屏显示
//隐藏 title 并全屏显示 private void showFEATURE_NO_TITLE() { requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.main); // 加上这句设置为全屏 不加则只隐藏title getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); }
5 显示进度条
//title中加入进度条 private void showFEATURE_PROGRESS() { requestWindowFeature(Window.FEATURE_PROGRESS); setProgressBarVisibility(true); setProgressBarIndeterminateVisibility(true); setContentView(R.layout.main); setTitle("进度条Title"); getWindow().setFeatureInt(Window.FEATURE_PROGRESS, Window.PROGRESS_VISIBILITY_ON); // 通过线程来改变ProgressBar的值 new Thread(new Runnable() { public void run() { for (int i = 0; i < 10; i++) { try { Thread.sleep(1000); Message m = Message.obtain(); m.what = (i + 1) * 20; WindowFeatureDemoActivity.this.myMessageHandler.sendMessage(m); } catch (Exception e) { e.printStackTrace(); } } } }).start(); } Handler myMessageHandler = new Handler() { // @Override public void handleMessage(Message msg) { // 设置标题栏中前景的一个进度条进度值 setProgress(100 * msg.what); // 设置标题栏中后面的一个进度条进度值 setSecondaryProgress(100 * msg.what + 100); super.handleMessage(msg); } };
相关推荐
在这个项目中,可以尝试不同的`requestWindowFeature` 参数,观察它们对Activity窗口外观的影响。同时,通过查看和调试源码,可以进一步了解Android系统如何处理这些请求,以及它们如何影响UI布局。 总结起来,`...
在Android应用开发中,`requestWindowFeature()`是一个关键的方法,用于开启或关闭窗口的各种特性,以便根据需求...希望以上介绍对理解Android中的`requestWindowFeature()`有所帮助,并能将其灵活应用到你的项目中。
requestWindowFeature(Window.FEATURE_NO_TITLE);//没有标题 window.setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);// 设置全屏 window.addFlags...
在Activity的`onCreate()`方法中,首先调用`requestWindowFeature(Window.FEATURE_CUSTOM_TITLE)`来声明使用自定义标题。然后,通过`setContentView()`加载你的主布局文件(例如`R.layout.main`)。最后,使用`...
this.requestWindowFeature(Window.FEATURE_NO_TITLE); ``` 通过以上方法,你可以根据自己的需求灵活地处理Android Activity的"back"菜单响应和标题栏显示。在实际开发中,务必考虑到用户体验,确保操作流程的...
或者,如果只想对特定活动隐藏标题栏,可以在`<activity>`标签中设置: ```xml android:name=".YourActivity" android:theme="@style/AppTheme.NoActionBar"> <!-- 设置自定义主题 --> ... ``` 现在,当你...
开发者可以通过`requestWindowFeature()` 在Activity的`onCreate()` 方法之前设置这些特性。 `requestWindowFeature()` 函数的语法如下: ```java void requestWindowFeature(int featureId) ``` 其中,`featureId`...
综上所述,通过结合使用`requestWindowFeature()`、`setContentView()`以及可能的其他设置,你可以成功地自定义Dialog并去除title及导航栏,使其更符合你的应用设计需求。同时,记得在处理这些细节时遵循Android的...
通过`requestWindowFeature(Window.FEATURE_CUSTOM_TITLE)`开启自定义标题功能,然后设置布局资源,如`getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.titlebar)`,其中`R.layout.titlebar`是...
requestWindowFeature(Window.FEATURE_NO_TITLE); // 去掉系统默认标题栏 setContentView(R.layout.activity_main); View headerBar = getLayoutInflater().inflate(R.layout.header_bar, findViewById(R.id....
其中`requestWindowFeature`用于请求自定义标题栏特性,`setContentView`加载主布局,`setFeatureInt`则用于设置具体的自定义标题栏布局。 #### 半透明与全透明效果 Android也提供了内置的主题样式来实现透明效果...
在Android应用开发过程中,有时我们需要对应用界面进行特殊处理,比如设置窗口为半透明效果或者全屏显示。这些操作可以通过调整窗口的属性来实现,具体来说是通过调用`getWindow()`方法获取当前Activity的`Window`...
1. **移除标题栏**:调用`requestWindowFeature(Window.FEATURE_NO_TITLE);`来移除标题栏。这是因为默认情况下,Activity会有一个标题栏,如果不移除它,则无法达到真正的全屏效果。 2. **设置窗口为全屏**:使用`...
这通过调用`Activity`的`requestWindowFeature()`方法并传入`Window.FEATURE_CUSTOM_TITLE`来完成。在设置内容视图之前进行此操作是必要的,因为一旦设置了内容视图,就无法再请求新的窗口特性。 ```java ...
`requestWindowFeature(Window.FEATURE_NO_TITLE)`用于移除Activity的标题栏,`getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN)`则将Activity设置...
Android 实现全屏显示的几种方法整理 A、设置主题实现全屏 ...requestWindowFeature(Window.FEATURE_NO_TITLE); 2、隐藏状态栏 getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,Window
(4)Popupwindow没有标题,Dialog默认有标题,可以通过dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);取消标题 (5)二者显示的时候都要设置Gravity。如果不设置,Dialog默认是Gravity.CENTER。 (6)...
1. 使用`requestWindowFeature(Window.FEATURE_CUSTOM_TITLE)`开启自定义title功能。 2. 使用`setContentView(R.layout.main)`加载主布局。 3. 使用`getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R....