[英]Using UICollisionBehavior for Setting boundaries
我是ios编程的初学者。 当我使用UiCollisionBehavior设置放置项的边界时,我在ViewController.m中添加了以下代码
#import "ViewController.h"
@interface ViewController ()
@end
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
UIView *myView = [[UIView alloc]initWithFrame:CGRectMake(100, 100, 100, 100)];
myView.backgroundColor = [UIColor grayColor];
UIView *barrier = [[UIView alloc]initWithFrame:CGRectMake(0, 300, 130, 20)];
barrier.backgroundColor = [UIColor redColor];
[self.view addSubview: barrier];
[self.view addSubview:myView];
_animator = [[UIDynamicAnimator alloc]initWithReferenceView:myView];
_gravity = [[UIGravityBehavior alloc]initWithItems:@[myView]];
[_animator addBehavior:_gravity];
_collision = [[UICollisionBehavior alloc]
initWithItems:@[myView]];
_collision.translatesReferenceBoundsIntoBoundary= YES;
[_animator addBehavior:_collision];
}
- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
@end
但是,myView不会下降,只是停留在原始位置。 有人可以告诉我原因吗?
替换此行,您不会在UICollisionBehavior中添加障碍
_collision = [[UICollisionBehavior alloc] initWithItems:@[myView, barrier]];
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.