首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >移动UIImageView时检测屏幕边缘

移动UIImageView时检测屏幕边缘
EN

Stack Overflow用户
提问于 2011-03-14 00:42:23
回答 1查看 475关注 0票数 1

我目前有一个可以在视图中移动/拖动的UIImageView。

当图像移动并阻止图像移出屏幕视图时,on如何检测屏幕边缘?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-03-14 00:58:46

您可以使用以下命令在(最外层)视图的坐标中查找UIImageView的矩形

代码语言:javascript
运行
复制
CGRect r = [iv convertRect:iv.bounds toView:self.view];

然后是检查r是否越界的问题,例如:

代码语言:javascript
运行
复制
CGRect i = CGRectIntersect(r,self.view.bounds);

if ( CGRectIsNull(i) )
{
    NSLog(@"way out of bounds");
} else if ( !CGRectEqualToRect(i,r) ) {
    NSLog(@"partly out of bounds");
} else {
    NSLog(@"self.view envelopes imageview");
}

当然,这应该放在你的拖拽代码中,用适当的处理替换NSLog()语句(例如,在最后一种情况下只更新位置,或者如果需要的话,通过将矩形转换回视图)

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5290783

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档