安卓 怎么在framework修改navigationbar的 背景色
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了安卓 怎么在framework修改navigationbar的 背景色相关的知识,希望对你有一定的参考价值。
参考技术A 最近我突然发现UINavigationbar背景修改的方法不起作用了,代码如下:@implementation UINavigationBar (CustomImage)
-(void)drawRect:(CGRect)rect
UIImage *image = [UIImage imageNamed:@"navigationbar.png"];
[image drawInRect:CGRectMake(0,0,self.frame.size.width,self.frame.size.height)];
@end
发现原来是ios 5的原因,如果运行在iOS 5以下的版本就没有问题了。经过实验以下方法适合iOS 5(放在ViewDidLoad中):
if ([self.navigationController.navigationBar respondsToSelector:@selector( setBackgroundImage:forBarMetrics:)])
[self.navigationController.navigationBar setBackgroundImage:[UIImage imageNamed:@"navigationbar.png"] forBarMetrics:UIBarMetricsDefault];
第一条if语句的作用是防止程序在iOS 5以下的版本中崩溃。
这样,依靠这两段代码,我的UINavigationbar的背景问题在iOS 5及以下版本中得到了完美的解决。
安卓修改屏幕背光默认亮度(framework修改法)
本文所在的平台是安卓10
1.修改文件config.xml
本平台路径:/frameworks/base/core/res/res/values/config.xml
搜索
最暗值:config_screenBrightnessSettingMinimum
最亮值:config_screenBrightnessSettingMaximum
默认值:config_screenBrightnessSettingDefault
ps:路径这东西,如果找不到,grep一下关键词,安卓这么多版本,学会变通。
<integer name="config_screenBrightnessSettingMinimum">5</integer>
<!-- Maximum screen brightness allowed by the power manager.
The user is forbidden from setting the brightness above this level. -->
<integer name="config_screenBrightnessSettingMaximum">255</integer>
<!-- Default screen brightness setting.
Must be in the range specified by minimum and maximum. -->
<integer name="config_screenBrightnessSettingDefault">102</integer>
当然啦,关于光暗值,这个文件还有很多,上面的配置项是我们最常见的手动拉状态栏光度调的最大最小值。
还有自动调节光暗度的配置项。
<integer name="config_autoBrightnessBrighteningLightDebounce">4000</integer>
<integer name="config_autoBrightnessDarkeningLightDebounce">8000</integer>
<!-- Initial light sensor event rate in milliseconds for automatic brightness control. This is
used for obtaining the first light sample when the device stops dozing.
Set this to -1 to disable this feature. -->
<integer name="config_autoBrightnessInitialLightSensorRate">-1</integer>
<!-- Light sensor event rate in milliseconds for automatic brightness control. -->
<integer name="config_autoBrightnessLightSensorRate">250</integer>
<!-- The maximum range of gamma adjustment possible using the screen
auto-brightness adjustment setting. -->
<fraction name="config_autoBrightnessAdjustmentMaxGamma">300%</fraction>
ex:看路径就知道,这个文件是属于framework里的资源文件。不止是光暗值,在系统里的内置apk,如systemUI,development等,很多我们看见的文字都属于这个res文件夹里。大家可以研究研究。
2.快速调试res模块
在修改完res这个模块时,教大家一个快速调试的方法:
2.1单独编译res生成framework-res.apk
在输入source build/envset.sh 和 lunch XXX等配置环境命令后。进入/frameworks/base/core/res
会看到Android.bp 或者Android.mk (老版本)
执行命令:mm
2.2替换apk
该apk在手机目录:/system/framework/
使用:adb push framework-res.apk /system/framework/
有androidstdio也可以用这个放进去。
2.3 重启
这个是修改framework的方法。嘿嘿,当然还有其他方法,后面会介绍驱动怎么去修改。
最后,希望可以帮到大家,如果有用的就收藏一下,白嫖的就点个赞。
以上是关于安卓 怎么在framework修改navigationbar的 背景色的主要内容,如果未能解决你的问题,请参考以下文章
Windows上运行自己编译的安卓系统img(补充自己制作雷电)-千里马android framework