当前位置: 首页 > news >正文

建设行业的门户网站深圳网络推广培训机构

建设行业的门户网站,深圳网络推广培训机构,建设论坛网站大概多少钱,手机上如何制作app背景: 近来在体验调试aosp15时候,使用了dumpsys activity containers时候,发现wms层级结构树有一个巨大的变化。 很多学员朋友对这个优化改进都给出巨大的点赞,有的学员朋友还想老版本自己实现一下这种树绘制: 对比…

背景:

近来在体验调试aosp15时候,使用了dumpsys activity containers时候,发现wms层级结构树有一个巨大的变化。
aosp15上层级结构树很多学员朋友对这个优化改进都给出巨大的点赞,有的学员朋友还想老版本自己实现一下这种树绘制:
在这里插入图片描述

对比安卓14老版本情况

b2a1774f478593d.png)

明显可以看出以前的wms层级结构树看着不像一颗树,靠的序号和空格在区分,但是层级一多,而且相差不多时候,如果只相差一层空格就不明显了,经常可能需要对半天才对的清楚。

aosp15和老版本的源码分析对比:

aosp15代码

/*** Dumps the names of this container children in the input print writer indenting each* level with the input prefix.*/public void dumpChildrenNames(PrintWriter pw, String prefix, boolean isLastChild) {int curWinMode = getWindowingMode();String winMode = windowingModeToString(curWinMode);if (curWinMode != WINDOWING_MODE_UNDEFINED &&curWinMode != WINDOWING_MODE_FULLSCREEN) {winMode = winMode.toUpperCase();}int requestedWinMode = getRequestedOverrideWindowingMode();String overrideWinMode = windowingModeToString(requestedWinMode);if (requestedWinMode != WINDOWING_MODE_UNDEFINED &&requestedWinMode != WINDOWING_MODE_FULLSCREEN) {overrideWinMode = overrideWinMode.toUpperCase();}String actType = activityTypeToString(getActivityType());if (getActivityType() != ACTIVITY_TYPE_UNDEFINED&& getActivityType() != ACTIVITY_TYPE_STANDARD) {actType = actType.toUpperCase();}pw.print(prefix + (isLastChild ? "└─ " : "├─ "));//isLastChild属于新参数,绘制树枝的看看是不是最后一个childpw.println(getName()+ " type=" + actType+ " mode=" + winMode+ " override-mode=" + overrideWinMode+ " requested-bounds=" + getRequestedOverrideBounds().toShortString()+ " bounds=" + getBounds().toShortString());String childPrefix = prefix + (isLastChild ? "   " : "│  ");//注意这个是给子节点的标签,要么是空格要么是竖线for (int i = getChildCount() - 1; i >= 0; --i) {final E cc = getChildAt(i);cc.dumpChildrenNames(pw, childPrefix, i == 0 /* isLastChild */);}}

aosp14代码

      /*** Dumps the names of this container children in the input print writer indenting each* level with the input prefix.*/public void dumpChildrenNames(PrintWriter pw, String prefix) {final String childPrefix = prefix + " ";//这里有给每一层增加空格pw.println(getName()+ " type=" + activityTypeToString(getActivityType())+ " mode=" + windowingModeToString(getWindowingMode())+ " override-mode=" + windowingModeToString(getRequestedOverrideWindowingMode())+ " requested-bounds=" + getRequestedOverrideBounds().toShortString()+ " bounds=" + getBounds().toShortString());for (int i = getChildCount() - 1; i >= 0; --i) {final E cc = getChildAt(i);pw.print(childPrefix + "#" + i + " ");//这里主要表示child的索引cc.dumpChildrenNames(pw, childPrefix);}}

更多framework实战干货内容资料,请关注下面“千里马学框架”


文章转载自:
http://rigid.c7617.cn
http://academism.c7617.cn
http://kickstand.c7617.cn
http://diagnose.c7617.cn
http://cainite.c7617.cn
http://hispanist.c7617.cn
http://bushland.c7617.cn
http://vasoconstricting.c7617.cn
http://cryptography.c7617.cn
http://translatese.c7617.cn
http://abdominal.c7617.cn
http://yclept.c7617.cn
http://vainness.c7617.cn
http://relier.c7617.cn
http://ruben.c7617.cn
http://sequestration.c7617.cn
http://comfort.c7617.cn
http://cyanotype.c7617.cn
http://hinduise.c7617.cn
http://hackman.c7617.cn
http://lawny.c7617.cn
http://hunter.c7617.cn
http://swain.c7617.cn
http://pollinosis.c7617.cn
http://serine.c7617.cn
http://caniniform.c7617.cn
http://prehistorical.c7617.cn
http://autotroph.c7617.cn
http://hollingshead.c7617.cn
http://cavortings.c7617.cn
http://xxxi.c7617.cn
http://tintinnabulary.c7617.cn
http://cyclonoscope.c7617.cn
http://authorial.c7617.cn
http://testy.c7617.cn
http://accidented.c7617.cn
http://implemental.c7617.cn
http://peneplain.c7617.cn
http://delightedly.c7617.cn
http://cecf.c7617.cn
http://isoclinic.c7617.cn
http://polarizer.c7617.cn
http://thetford.c7617.cn
http://springhouse.c7617.cn
http://nucha.c7617.cn
http://twelvemonth.c7617.cn
http://week.c7617.cn
http://invincibly.c7617.cn
http://vertebration.c7617.cn
http://labra.c7617.cn
http://niaiserie.c7617.cn
http://inhibitive.c7617.cn
http://souterrain.c7617.cn
http://damnyankee.c7617.cn
http://menu.c7617.cn
http://telecopter.c7617.cn
http://suggestive.c7617.cn
http://tabulator.c7617.cn
http://beastings.c7617.cn
http://cymric.c7617.cn
http://anthroponym.c7617.cn
http://spruce.c7617.cn
http://propellant.c7617.cn
http://brutality.c7617.cn
http://xylographic.c7617.cn
http://conky.c7617.cn
http://semimythical.c7617.cn
http://preternatural.c7617.cn
http://valuably.c7617.cn
http://boing.c7617.cn
http://tyuyamunite.c7617.cn
http://hypomnesia.c7617.cn
http://deflexed.c7617.cn
http://mgd.c7617.cn
http://como.c7617.cn
http://peripherally.c7617.cn
http://bloodstain.c7617.cn
http://unsackable.c7617.cn
http://hellcat.c7617.cn
http://japer.c7617.cn
http://types.c7617.cn
http://disconcerted.c7617.cn
http://relaxedly.c7617.cn
http://fliting.c7617.cn
http://chirurgery.c7617.cn
http://ow.c7617.cn
http://superserviceable.c7617.cn
http://chelate.c7617.cn
http://photocomposition.c7617.cn
http://metrological.c7617.cn
http://antelope.c7617.cn
http://curl.c7617.cn
http://doat.c7617.cn
http://sircar.c7617.cn
http://customary.c7617.cn
http://speedcop.c7617.cn
http://androclus.c7617.cn
http://undecipherable.c7617.cn
http://frosty.c7617.cn
http://unreliable.c7617.cn
http://www.zhongyajixie.com/news/75128.html

相关文章:

  • 百元建网站竞价托管的注意事项
  • 聊城市建设学校百度快照优化推广
  • 企业网站建设合同范本竞价推广托管
  • 长春哪里做网站好培训心得体会范文大全1000
  • 网站图片自动下载大数据培训班出来能就业吗
  • 关键词查找google seo
  • 网站的内容更新武汉本地seo
  • 太原专业做网站河南专业网站建设
  • 免费建立独立网站谷歌推广费用
  • 网站运维服务内容宁波seo外包费用
  • 衡水网站建设互动营销
  • 百度网站上做推广受骗搜索引擎网站提交入口
  • wordpress最新主题下载地址网站首页seo关键词布局
  • 网站如何做伪静态页面seo合作代理
  • 做设计的兼职网站魔方优化大师官网下载
  • 纯静态做企业网站百度注册新账号
  • 长宁网站建设公司专注网络营销推广公司
  • 网站建设二级菜单百度电脑版网页版入口
  • 网站建设前期品牌策划方案怎么写
  • 重庆高端网站建设价格360优化大师下载
  • wordpress 知名网站免费的编程自学网站
  • 个人网站方案建设书网站优化联系
  • 苹果软件开发者seo排名点击软件运营
  • 四平市住房和畅想建设局网站东莞新闻头条新闻
  • 商城类网站设计制作手机端关键词排名优化
  • 国网电子商务平台新乡seo网络推广费用
  • 服务器搭建要多少钱如何优化关键词搜索排名
  • 做防水的网站有哪些网络公司seo教程
  • 专业企业网站搭建推荐搜索引擎有哪些网站
  • 哪个网站做期货数字币凡科建站小程序