android 修改statusbar(二)

2024-01-16 04:18
文章标签 android 修改 statusbar

本文主要是介绍android 修改statusbar(二),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

转自:   http://blog.csdn.net/dahuaishu2010_/article/details/7823930



平板的显示到顶部.

   
   
   protected int getStatusBarGravity() {
        return Gravity.BOTTOM | Gravity.FILL_HORIZONTAL;
    }
    
    
如何把状态栏从顶部移动到底部;
Around line 345 of frameworks/base/services/java/com/android/server/status/StatusBarService.java changeGravity.TOP to Gravity.BOTTOM.
Around line 1265 of frameworks/policies/base/phone/com/android/internal/policy/impl/PhoneWindowManager.java replacemDockTop = mContentTop = mCurTop = mStatusBar.getFrameLw().bottom withmContentBottom = mCurBottom = mStatusBar.getFrameLw().top.
Around line 719 of frameworks/policies/base/mid/com/android/internal/policy/impl/MidWindowManager.java, replacemCurTop = mStatusBar.getFrameLw().bottom with mCurBottom = mStatusBar.getFrameLw().top.


修改PhoneStatusBar.java中的getStatusBarGravity()方法返回值
默认是Top和水平
调整上下位置
 
Android 2.2 和android 2.3 在源码结构上有一些变化:tatusbar 的位置的变化,2.3中 statusbar 的源码在 frameworks/base/packages/SystemUI中。


修改statusbar的背景,frameworks/base/packages/SystemUI/res/drawable-mdpi,替换 statusbar_background.9.png


调整statusbar的高度,frameworks/base/core/res/res/values/dimens.xml 中,修改 <dimen name="status_bar_height">25dip</dimen> 的值


调整statusbar中的日期和时钟的字体:frameworks/base/packages/SystemUI/res/layout/status_bar.xml 中,会有如下的代码 <com.Android.systemui.statusbar.Clock 定义时钟的样式,可以添加字体的属性 如: android:textSize等;<com.android.systemui.statusbar.DateView 定义的是日期的样式,可以添加字体的属性 如: android:textSize等。


去掉statusbar中的图标,在平板开发的过程中,有一些手机的功能可能在平板上用不到,如3G功能,但是怎么样把statusbar中的3G的图标去掉呢?在 framework/base/packages/SystemUI/src/com/Android/systemui/statusbar/StatusBarPolicy.java 中会有下面的代码 mService.setIcon("phone_signal", mPhoneSignalIconId, 0); 这里是设置手机信号的图标,去掉3G信号图标只需将这个文件中的 这句话注释即可。相应的也可以修改其他的图标。


修改完之后可以直接编译SystemUI,然后push 到/system/app 中,即可看到效果。


编译 SystemUI: 在Android根目录执行 source build/envsetup.sh ,然后在根目录执行 mm SystemUI ,最后会在 out/target/product/generic/system/app 中生成一个SystemUI.apk,


adb push SystemUI.apk /system/app;


statusbar是一种服务,需要启动satusbar服务:Android 启动服务 命令: adb shell am start -n com.android.systemui/com.android.systemui.statusbar.StatusBarService,即可看到效果。


关于Android启动Activity: adb shell am start -n 包名/包名.Activity名;启动服务:adb shell am start -n 包名/包名.服务名

标签: android, statusbar

这篇关于android 修改statusbar(二)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/611308

相关文章

Android DataBinding 与 MVVM使用详解

《AndroidDataBinding与MVVM使用详解》本文介绍AndroidDataBinding库,其通过绑定UI组件与数据源实现自动更新,支持双向绑定和逻辑运算,减少模板代码,结合MV... 目录一、DataBinding 核心概念二、配置与基础使用1. 启用 DataBinding 2. 基础布局

Android ViewBinding使用流程

《AndroidViewBinding使用流程》AndroidViewBinding是Jetpack组件,替代findViewById,提供类型安全、空安全和编译时检查,代码简洁且性能优化,相比Da... 目录一、核心概念二、ViewBinding优点三、使用流程1. 启用 ViewBinding (模块级

SQL Server修改数据库名及物理数据文件名操作步骤

《SQLServer修改数据库名及物理数据文件名操作步骤》在SQLServer中重命名数据库是一个常见的操作,但需要确保用户具有足够的权限来执行此操作,:本文主要介绍SQLServer修改数据... 目录一、背景介绍二、操作步骤2.1 设置为单用户模式(断开连接)2.2 修改数据库名称2.3 查找逻辑文件名

Oracle修改端口号之后无法启动的解决方案

《Oracle修改端口号之后无法启动的解决方案》Oracle数据库更改端口后出现监听器无法启动的问题确实较为常见,但并非必然发生,这一问题通常源于​​配置错误或环境冲突​​,而非端口修改本身,以下是系... 目录一、问题根源分析​​​二、保姆级解决方案​​​​步骤1:修正监听器配置文件 (listener.

Linux中修改Apache HTTP Server(httpd)默认端口的完整指南

《Linux中修改ApacheHTTPServer(httpd)默认端口的完整指南》ApacheHTTPServer(简称httpd)是Linux系统中最常用的Web服务器之一,本文将详细介绍如何... 目录一、修改 httpd 默认端口的步骤1. 查找 httpd 配置文件路径2. 编辑配置文件3. 保存

Android学习总结之Java和kotlin区别超详细分析

《Android学习总结之Java和kotlin区别超详细分析》Java和Kotlin都是用于Android开发的编程语言,它们各自具有独特的特点和优势,:本文主要介绍Android学习总结之Ja... 目录一、空安全机制真题 1:Kotlin 如何解决 Java 的 NullPointerExceptio

Nginx 413修改上传文件大小限制的方法详解

《Nginx413修改上传文件大小限制的方法详解》在使用Nginx作为Web服务器时,有时会遇到客户端尝试上传大文件时返回​​413RequestEntityTooLarge​​... 目录1. 理解 ​​413 Request Entity Too Large​​ 错误2. 修改 Nginx 配置2.1

Python对PDF书签进行添加,修改提取和删除操作

《Python对PDF书签进行添加,修改提取和删除操作》PDF书签是PDF文件中的导航工具,通常包含一个标题和一个跳转位置,本教程将详细介绍如何使用Python对PDF文件中的书签进行操作... 目录简介使用工具python 向 PDF 添加书签添加书签添加嵌套书签Python 修改 PDF 书签Pytho

Android NDK版本迭代与FFmpeg交叉编译完全指南

《AndroidNDK版本迭代与FFmpeg交叉编译完全指南》在Android开发中,使用NDK进行原生代码开发是一项常见需求,特别是当我们需要集成FFmpeg这样的多媒体处理库时,本文将深入分析A... 目录一、android NDK版本迭代分界线二、FFmpeg交叉编译关键注意事项三、完整编译脚本示例四

Android与iOS设备MAC地址生成原理及Java实现详解

《Android与iOS设备MAC地址生成原理及Java实现详解》在无线网络通信中,MAC(MediaAccessControl)地址是设备的唯一网络标识符,本文主要介绍了Android与iOS设备M... 目录引言1. MAC地址基础1.1 MAC地址的组成1.2 MAC地址的分类2. android与I