这个d出窗口的位置是相当的纠结。
popover.popoverContentSize = CGSizeMake(300,300); //d出窗口大小。这个没什么好说的,就是大小,当然不能超过屏幕。
CGRect popoverRect = CGRectMake(x0,y0,x1,y1);
[popover presentPopoverFromrect:popoverRect
inVIEw:self.vIEw
permittedArrowDirections:UIPopoverArrowDirectionDown //箭头方向
animated:YES];
最烦人的就是上面那个CGRectMake(x0,y1),咋一看,很简单,起点坐标,矩形宽高, 其实远不是那么回事。这三个参数压根就与矩形大小无关。因为上面那个已经确定了,这个只是确定指示箭头的位置。 前面两个是参照坐标,也就是参照坐标,想想就知道什么是参照坐标了。后面两个,第三个是相对参照坐标的坐标,比如若 x0 = 10,而x1=200,那么实际绝对横坐标应该是210,纵坐标更扯了,在参照坐标的基础上,又乘以2,也就是实际坐标只有 一半。那么实际绝对坐标就是 (x1+x0,(y1+y0)/2),当然这一切都是以inVIEw后面的参数为参考的。 还有一点就是如果坐标超出屏幕,那只能达到最大限度了。 调这个很费时间,这是笔者的一点所得,希望对大家有所帮助,也希望大家发现更多的规律。
以上是内存溢出为你收集整理的iPad UIPopoverControllerd出窗口的位置和坐标初探全部内容,希望文章能够帮你解决iPad UIPopoverControllerd出窗口的位置和坐标初探所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)