Android SystemUI源码分析与修改,作为Android程序员应该怎样去规划自己的学习路线

这篇具有很好参考价值的文章主要介绍了Android SystemUI源码分析与修改,作为Android程序员应该怎样去规划自己的学习路线。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

systemui:keyCode=“4”

android:layout_weight=“0”

systemui:glowBackground=“@drawable/ic_sysbar_highlight”

android:contentDescription=“@string/accessibility_back”

/>

音量减的布局如下,这里先把Visibility定义为Gone,然后在代码中控制是否显示:

<com.android.systemui.statusbar.policy.KeyButtonView android:id=“@+id/sub”

android:src=“@drawable/sub_normal”

android:layout_width=“@dimen/navigation_key_width”

android:layout_height=“match_parent”

android:layout_weight=“0”

systemui:keyCode=“302”

systemui:glowBackground=“@drawable/ic_sysbar_highlight”

android:visibility=“gone”/>

“音量加”添加到“最近应用”之后,最近应用的布局:

<com.android.systemui.statusbar.policy.KeyButtonView android:id=“@+id/recent_apps”

android:layout_width=“128dp” android:paddingStart=“25dp” android:paddingEnd=“25dp”

android:layout_height=“match_parent”

android:src=“@drawable/ic_sysbar_recent”

android:layout_weight=“0”

systemui:glowBackground=“@drawable/ic_sysbar_highlight”

android:contentDescription=“@string/accessibility_recent”

/>

音量加的布局:

<com.android.systemui.statusbar.policy.KeyButtonView android:id=“@+id/add”

android:src=“@drawable/add_normal”

android:layout_width=“@dimen/navigation_key_width”

android:layout_height=“match_parent”

android:layout_weight=“0”

systemui:keyCode=“301”

systemui:glowBackground=“@drawable/ic_sysbar_highlight”

android:visibility=“gone”/>

3.接着修改代码逻辑,文件路径:

frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java

在private void prepareNavigationBarView() {……}函数中添加显示音量加减的代码:

mNavigationBarView.getAddVolume().setVisibility(View.VISIBLE);

mNavigationBarView.getSubVolume().setVisibility(View.VISIBLE);

对应的函数getAddVolume()和getAddVolume()要在

frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarView.java

中实现:

public View getAddVolume(){

return mCurrentView.findViewById(R.id.add);

}

public View getSubVolume(){

return mCurrentView.findViewById(R.id.sub);

}

最后就是功能实现了,在

frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java

中添加监听函数:

private View.OnTouchListener mAddVolumeOnTouchListener = new View.OnTouchListener() {

public boolean onTouch(View v, MotionEvent ev) {

final int action = ev.getAction();

switch(action) {

case MotionEvent.ACTION_DOWN:

is_down = true;

Adjust_Volume(true);

maddHandler.postDelayed(maddRun, ADJUST_VOLUME_DELAY * 2);

break;

case MotionEvent.ACTION_MOVE:

is_down = true;

maddHandler.postDelayed(maddRun, ADJUST_VOLUME_DELAY * 2);

// maddHandler.removeCallbacks(maddRun);

break;

case MotionEvent.ACTION_UP:

is_down = false;

maddHandler.removeCallbacks(maddRun);

break;

}

return true;

}

};

private View.OnTouchListener mSubVolumeOnTouchListener = new View.OnTouchListener() {

public boolean onTouch(View v, MotionEvent ev) {

final int action = ev.getAction();

int x, y;

//int mCode = ev.getAction();

switch (action) {

case MotionEvent.ACTION_DOWN:

is_down = true;

Adjust_Volume(false);

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Android工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Android移动开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
Android SystemUI源码分析与修改,作为Android程序员应该怎样去规划自己的学习路线,2024年程序员学习,android,学习
Android SystemUI源码分析与修改,作为Android程序员应该怎样去规划自己的学习路线,2024年程序员学习,android,学习
Android SystemUI源码分析与修改,作为Android程序员应该怎样去规划自己的学习路线,2024年程序员学习,android,学习
Android SystemUI源码分析与修改,作为Android程序员应该怎样去规划自己的学习路线,2024年程序员学习,android,学习
Android SystemUI源码分析与修改,作为Android程序员应该怎样去规划自己的学习路线,2024年程序员学习,android,学习
Android SystemUI源码分析与修改,作为Android程序员应该怎样去规划自己的学习路线,2024年程序员学习,android,学习
Android SystemUI源码分析与修改,作为Android程序员应该怎样去规划自己的学习路线,2024年程序员学习,android,学习

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以添加V获取:vip204888 (备注Android)
Android SystemUI源码分析与修改,作为Android程序员应该怎样去规划自己的学习路线,2024年程序员学习,android,学习

学习福利

【Android 详细知识点思维脑图(技能树)】

Android SystemUI源码分析与修改,作为Android程序员应该怎样去规划自己的学习路线,2024年程序员学习,android,学习

其实Android开发的知识点就那么多,面试问来问去还是那么点东西。所以面试没有其他的诀窍,只看你对这些知识点准备的充分程度。so,出去面试时先看看自己复习到了哪个阶段就好。

虽然 Android 没有前几年火热了,已经过去了会四大组件就能找到高薪职位的时代了。这只能说明 Android 中级以下的岗位饱和了,现在高级工程师还是比较缺少的,很多高级职位给的薪资真的特别高(钱多也不一定能找到合适的),所以努力让自己成为高级工程师才是最重要的。

这里附上上述的面试题相关的几十套字节跳动,京东,小米,腾讯、头条、阿里、美团等公司19年的面试题。把技术点整理成了视频和PDF(实际上比预期多花了不少精力),包含知识脉络 + 诸多细节。

由于篇幅有限,这里以图片的形式给大家展示一小部分。

Android SystemUI源码分析与修改,作为Android程序员应该怎样去规划自己的学习路线,2024年程序员学习,android,学习

网上学习 Android的资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。希望这份系统化的技术体系对大家有一个方向参考。

重要的。

这里附上上述的面试题相关的几十套字节跳动,京东,小米,腾讯、头条、阿里、美团等公司19年的面试题。把技术点整理成了视频和PDF(实际上比预期多花了不少精力),包含知识脉络 + 诸多细节。

由于篇幅有限,这里以图片的形式给大家展示一小部分。

[外链图片转存中…(img-PQVXuCqk-1711912721751)]

网上学习 Android的资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。希望这份系统化的技术体系对大家有一个方向参考。

本文已被CODING开源项目:《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》收录文章来源地址https://www.toymoban.com/news/detail-851881.html

到了这里,关于Android SystemUI源码分析与修改,作为Android程序员应该怎样去规划自己的学习路线的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Android 14.0 SystemUI下拉状态栏时间格式的修改(二)

    在14.0的系统rom产品开发中,在通过上一篇博客已经实现修改了时间显示格式,但是客户修改下拉状态栏时间显示格式为分行显示,即第一行显示时间用大字体显示, 第二行用小字体显示当前日期和周几这样的显示格式 于是继续进行修改 在SystemUI下拉状态栏时间格式的修改

    2024年04月22日
    浏览(49)
  • Android 14.0 SystemUI下拉状态栏时间格式的修改(一)

    在14.0系统产品rom定制化开发中,原生systemui的系统下拉状态栏时间格式为 某月某日周几 这样的格式 根据产品需要修改为年月日周几 某时某分这种格式 这就需要修改 显示时间的格式 在更新时间时 按照这个格式更新就可以了,接下来看如何实现这个功能 在系统systemui,其实

    2024年04月25日
    浏览(47)
  • Android 14.0 SystemUI修改状态栏电池图标样式为横屏显示

    在14.0的系统rom产品定制化开发中,对于原生系统中SystemUId 状态栏的电池图标是竖着显示的,一般手机的电池图标都是横屏显示的 可以觉得样式挺不错的,所以由于产品开发要求电池图标横着显示和手机的样式一样,所以就得重新更换SystemUI状态栏的电池样式了 如图: systemu

    2024年04月29日
    浏览(69)
  • Android 12系统源码_SystemUI(八)SystemUIVisibility属性

    在Android系统中,很多应用都需要根据具体情况来控制状态栏和导航栏的显示和隐藏,又或者将状态栏透明,实现诸如沉浸式、全面屏灯效果,而要实现这些效果,都离不开SystemUIVisibility属性。由于SystemUIVisibilityy属性主要用来控制系统状态栏和导航栏的行为,而状态栏和导航

    2024年02月06日
    浏览(46)
  • Android 9系统源码_SystemUI(十)SystemUIVisibility属性

    在Android系统中,很多应用都需要根据具体情况来控制状态栏和导航栏的显示和隐藏,又或者将状态栏透明,实现诸如沉浸式、全面屏灯效果,而要实现这些效果,都离不开SystemUIVisibility属性。由于SystemUIVisibilityy属性主要用来控制系统状态栏和导航栏的行为,而状态栏和导航

    2024年02月11日
    浏览(40)
  • 【如何确定自己作为程序员的职业发展方向?】

    优秀的程序员在选择自己的职业方向时,通常会考虑以下几个因素: 兴趣和热情:程序员应该选择对自己有兴趣并且热情的领域。兴趣可以保持你的工作动力,并且更容易取得成功。 技术发展潜力:选择一个技术发展潜力大的方向可以确保你的职业长期稳定发展。例如,人

    2024年02月09日
    浏览(46)
  • 作为程序员,你很有必要了解一下IVX

    iVX 是一个“零代码”的可视化编程平台,拥有方便的在线集成开发环境,不需要下载开发环境,打开浏览器即可随时随地进行项目编辑。iVX 还拥有“一站式”的云资源,通过这一套一站式服务,iVX 可以实现一站式研发、一站式部署、一站式维护。iVX相当于“一款零代码可视

    2024年02月15日
    浏览(53)
  • 作为一个程序员一定要掌握的算法之遗传算法

    目录 一、引言 1.1 目的 1.2 意义 二、遗传算法介绍 2.1 遗传算法的基本思想 2.2 遗传算法与其他算法的主要区别 2.3 基于Java的遗传算法设计思想 三、遗传算法的具体实现 3.1 系统功能模块图和说明 3.2 代码和说明 3.2.1 初始化 3.2.2 选择运算 3.2.3 交叉运算 3.2.4 变异运算 3.2.5 主函

    2024年02月15日
    浏览(58)
  • 作为一名程序员,如何写出一手让同事膜拜的漂亮代码?

    整洁的代码 有意义的命名 函数命名 变量命名 函数的定义 注释的规范 代码的长度 代码的对齐 我写代码已经有好几年了,最近看了一本书叫做《代码整洁之道》。我发现这本书中介绍的一些内容对我来说非常有启发性。书中提到的一些方法和技巧让我重新审视了自己的代码

    2024年02月02日
    浏览(61)
  • chatGPT4问世,作为一个程序员应当如何去理解?

    前几年 AI 发展也遇到过许多瓶颈,甚至很多AI投资者因为技术得不到突破而破产。但近几年AI技术飞速发展,特别是今天的主题chatGPT 第一次问世还只是一个帮学生写作业的工具,第二次迭代即可完成大部分市场业务,回答很多刁钻的问题。 有人测试过问chatGPT一些很难以回答

    2023年04月10日
    浏览(55)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包