iPhone SDK:禁用UIScrollView的cllipping

rya*_*ott 0 iphone objective-c

我正在研究iPhone游戏,并尝试使用UIScrollView显示一些图标,然后我想让用户将正在滚动的栏拖到另一个视图上(基本上,将它们从他们的手拖到游戏中)游戏板).问题是UIScrollView会剪切它自己边界之外的所有内容.

这是我正在尝试做的图片:

替代文字

从功能上来说,它实际上是可行的,因为你可以将图标向上拖动到白板上......但是当你拖动时你看不到它们......这是不可接受的.

有没有人知道你是否可以暂时禁用滚动视图所做的剪辑,或者是否有某种方法来绕过它?哈克与否,我真的很想实现它.

有没有人有任何其他可能的解决方案?或者也许任何替代方法?我已经考虑过,如果页面视图可能有效,但还没有尝试过......而且它并不像滚动视图那样好.

最糟糕的情况我可以回到没有可滚动的栏,但这确实阻碍了我的一些游戏机制,我真的不太兴奋.

Bra*_*son 7

我想你正在寻找UIView的clipsToBounds属性.我已成功使用它与UIScrollView:

scrollView.clipsToBounds = NO;
Run Code Online (Sandbox Code Playgroud)

但是,您要从滚动视图拖动到游戏视图可能需要从滚动视图中删除图标视图,将其放置在超视图中与滚动视图中其可见位置对应的位置(使用滚动视图的原点和内容偏移量),并跟踪用户的手指移动.在触摸释放时,将其放在游戏视图中的适当位置或将其返回到滚动视图.