ViewRootImp内部canvas坐标转换的问题 androidframebuffersurfacecanvasViewRootImp 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 看真没看明白你到底想问啥。canvas.translate(0, -yoff);看起来只是处理了一下滚动条,如果滚动条纵坐标滚过了yoff个像素,那可见区域就是从yoff开始,所以translate一下。和坐标转换什么的没啥关系吧。onMeasure只是告诉ViewGroup,你希望得到的大小,实际上View的大小是ViewGroup.onLayout里面,调用child.layout确定的,可以完全不管onMeasure指定的大小。mLeft, mTop, mRight, mBottom都是以ViewGroup为坐标系,(0, 0)代表左上。Framebuffer我没研究过,不过我感觉在android的View的层面,应该不需要关心Framebuffer是怎么显示的。 onLayout只会计算View的位置,而不会计算大小,即onLayout里面计算mLeft,mTop,然后根据onMeasure计算的mMeasureWidth,mMeasureHeight来计算mRight,mBottom,具体就是mRight = mLeft + mMeasureWidth,mBottom=mTop+mMeasureHeight,这样确定View的显示区域和位置吧 onLayout只会计算View的位置,而不会计算大小,即onLayout里面计算mLeft,mTop,然后根据onMeasure计算的mMeasureWidth,mMeasureHeight来计算mRight,mBottom,具体就是mRight = mLeft + mMeasureWidth,mBottom=mTop+mMeasureHeight,这样确定View的显示区域和位置吧原则上是这样的,但不是强制要求的,通常来说子View需要在onMeasure里面调用setMeasuredDimension。然后ViewGroup在布局的时候会调用子View的getMeasuredWidth/Height方法,来获取子View“希望”获得的大小。ViewGroup在onLayout的时候,会通过调用子View的layout方法,来设定View的实际大小,“通常”是和子View的getMeasuredWidth/Height是一致的。所以View.getWidth的结果其实是mRight - mLeft。而View.getMeasuredWidth的结果才是通过onMeasure计算获取的结果。不过这和你的问题貌似没啥关系吧。 android音乐播放器歌词同步高亮 设置壁纸问题 如果视频处于后台服务状态,如何将(显示的)数据传给前台的view? android:layout_marginBottom相对应的代码 android程序关闭后,如何自行启动 请教JNI编程中C调用Java实现中NullPointerException问题 关于android调用webservice服务出错。 eclipse ndk 问题 基础类 这么写会有什么问题 大神求解答,这个工作原理是什么,硬件怎么配置,怎么编程 有没有什么命令行或工具可以查看so文件的方法名不? android 图文混排 任意类型附件
看起来只是处理了一下滚动条,如果滚动条纵坐标滚过了yoff个像素,那可见区域就是从yoff开始,所以translate一下。
和坐标转换什么的没啥关系吧。onMeasure只是告诉ViewGroup,你希望得到的大小,实际上View的大小是ViewGroup.onLayout里面,调用child.layout确定的,可以完全不管onMeasure指定的大小。mLeft, mTop, mRight, mBottom都是以ViewGroup为坐标系,(0, 0)代表左上。Framebuffer我没研究过,不过我感觉在android的View的层面,应该不需要关心Framebuffer是怎么显示的。
通常来说子View需要在onMeasure里面调用setMeasuredDimension。然后ViewGroup在布局的时候会调用子View的getMeasuredWidth/Height方法,来获取子View“希望”获得的大小。
ViewGroup在onLayout的时候,会通过调用子View的layout方法,来设定View的实际大小,“通常”是和子View的getMeasuredWidth/Height是一致的。
所以View.getWidth的结果其实是mRight - mLeft。而View.getMeasuredWidth的结果才是通过onMeasure计算获取的结果。不过这和你的问题貌似没啥关系吧。