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

做企业网站服务器wordpress友情链接页面插件

做企业网站服务器,wordpress友情链接页面插件,北京朝阳区天气预报,腰椎间盘突出怎么锻炼概要介绍 SurfaceControlViewHost是一个工具类, 用于帮助在其他进程中显示本进程的view。 SurfaceControlViewHost 为绘制进程持有,其中的SurfacePackage 交给另外的显示进程,在显示进程中的SurfaceView中通过SurfaceView.setChildSurface…

概要介绍

SurfaceControlViewHost是一个工具类, 用于帮助在其他进程中显示本进程的view。 

SurfaceControlViewHost 为绘制进程持有,其中的SurfacePackage 交给另外的显示进程,在显示进程中的SurfaceView中通过SurfaceView.setChildSurfacePackage(SurfacePackage) 将绘制进程中的界面与surfaceview关联并进行显示。绘制进程和显示进程中传递的实际上为surfacecontrol。   

具体实现

参照下面类图:

成员变量 

  •        WindowlessWindowManager mWm, 构造时传入,或者构造时创建。为IWindowSession 子类, 该类并不将一个view加入到wms中作为窗口管理, 而是将该view作为一个子surface加入到另一个父surface中。构造时创建时, 使用本类的mSurfaceControl作为参数, 作为WindowlessWindowManager的mRootSurface。 WindowlessWindowManager类的addToDisplay是按照 WindowManager.LayoutParams 创建一个surfacecontrol, 该surfacecontrol 对应SurfaceFlinger的buffer Layer, 分配具体的绘制buffer, 绘制进程的view 即绘制在该surface上。 该surface 存入WindowlessWindowManager.State.mSurfaceControl, mRootSurface为其parent。 WindowlessWindowManager类的relayout()中按照输入高宽及LayoutParams调整WindowlessWindowManager.State.mSurfaceControl的参数。 
  •        ViewRootImpl mViewRoot;  在SurfaceControlViewHost类构造时创建, 传入的参数为WindowlessWindowManager, 构造时会调用ViewRootImpl.forceDisableBLAST(),即绘制buffer在surfaceFlinger侧分配管理, 而不是在app侧。 
  •        SurfaceControl mSurfaceControl;  //构造时创建, 名字为“SurfaceControlViewHost”, 对应SurfaceFlinger中的ContainerLayer, 作为整个绘制surface的根。 其子layer 为在WindowlessWindowManager.addToDisplay中创建的buffer layer。 mSurfaceControl也作为根layer通过SurfacePackage传递给远端显示进程。 

    成员函数       

  • getSurfacePackage() :创建SurfacePackage:  new SurfacePackage(mSurfaceControl, mAccessibilityEmbeddedConnection); 其中SurfaceControlViewHost.mSurfaceControl 也作为SurfacePackage的mSurfaceControl, 会加入到显示进程中的SurfaceView中。
  • setView(View, ......): 最终调用的是mViewRoot.setView(view, attrs, null),进而调用WindowlessWindowManager.addToDisplay() 和relayout(), 将该view内容与WindowlessWindowManager.State.mSurfaceControl关联。 该mSurfaceControl即为buffer  layer。

示例代码

  • host端即绘制进程

参见: /frameworks/base/core/java/android/service/autofill/InlineSuggestionRenderService.java:170  

    final SurfaceControlViewHost host = new SurfaceControlViewHost(this, getDisplay(),hostInputToken);host.setView(suggestionRoot, lp);aidlClass.aidlFunction(host.getSurfacePackage());  //通过aidl接口将SurfacePackage交给显示进程即client端。 


    

  • client端即显示进程
 SurfaceHolder.Callback.surfaceCreated() {从远程host中获取SurfaceControlViewHost.SurfacePackage。 可以绘制进程调用aidl接口从绘制进程获取,或绘制进程调用aidl传入到显示进程。SurfaceView.setChildSurfacePackage(SurfacePackage);
}

http://www.yayakq.cn/news/87743/

相关文章:

  • 网站备案名称的影响厦门seo服务商
  • 网站页面app下载大全江苏建设管理中心网站
  • 免费php mysql网站成功营销案例100例
  • 一般建设网站大概需要多少钱自定义内容网站
  • wordpress变域名工具网站建设推广seo
  • 为什么检测行业不能用网站做广西做网站
  • 中区网站建设开发网站需要哪些技术人员
  • 服装网站建设方法智能建造的发展趋势
  • 做网站费用多少企业网站建设公司怎么做
  • 做外卖系统哪家网站做的好做网站知名公司
  • 重庆顶呱呱网站建设北京专业制作网站的公司
  • 怎么在自己的网站做淘宝客网页聊天工具
  • 做动态效果的插件网站网站建设公司推荐北京华网
  • 中国化工网网站建设建议wordpress 聚合6
  • 移动网站开发百科wordpress自动摘要
  • 全球优秀企业网站网站百科源码
  • 图片站手机网站怎么做的佛山网站建设公司-印象互动
  • 深圳市富通建设工程有限公司网站的网站建设公司
  • 廉政网站建设经验交流广州市官网网站建设哪家好
  • 网站制作+网站建设网站建设开发步骤
  • 网站开发 文献综述购物网站开发步骤视频演示
  • 桌面软件开发跟网站开发那个可以写代码的网站有哪些问题吗
  • 代做视频的网站重新wordpress默认
  • 网页网站设计培训班wordpress怎么去掉
  • 做一个企业的网站怎么做网站创建域名
  • 福鼎市建设局网站wordpress登陆好慢
  • 黄石市网站建设长沙seo搜索
  • 内蒙古网站制作wordpress实名认证发帖
  • 网站营销特点app平台制作开发
  • 企业网站建设合同百度文库潜江公司做网站