Я пытаюсь получить UIView, который находится в форме круга, чтобы «отскочить», используя UIKit Dynamics. Он должен отскакивать, когда он достигает нижней части экрана. Круг представляет собой стандарт UIView, который я создаю в методе viewDidLoad следующим образом:Попытка получить UIView для отскока с использованием UIKit Dynamics
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
self.orangeBall = [[UIView alloc] initWithFrame:CGRectMake(100.0, 100.0, 50.0, 50.0)];
self.orangeBall.backgroundColor = [UIColor orangeColor];
self.orangeBall.layer.cornerRadius = 25.0;
self.orangeBall.layer.borderColor = [UIColor blackColor].CGColor;
self.orangeBall.layer.borderWidth = 0.0;
[self.view addSubview:self.orangeBall];
// Initialize the property UIDynamicAnimator
self.animator = [[UIDynamicAnimator alloc] initWithReferenceView:self.view];
[self demoGravity];
}
Я пытаюсь получить эффект отскока сделано внутри метода demoGravity следующим образом:
-(void)demoGravity{
UIGravityBehavior *gravityBehavior = [[UIGravityBehavior alloc] initWithItems:@[self.orangeBall]];
[self.animator addBehavior:gravityBehavior];
UICollisionBehavior *collisionBehavior = [[UICollisionBehavior alloc] initWithItems:@[self.orangeBall]];
[collisionBehavior addBoundaryWithIdentifier:@"myView"
fromPoint:self.orangeBall.frame.origin
toPoint:CGPointMake(self.orangeBall.frame.origin.x, self.orangeBall.frame.origin.y + self.view.frame.size.height)];
[self.animator addBehavior:collisionBehavior];
}
Я хочу " мяч ", чтобы упасть прямо на экран, и как только он достигнет дна представления, остановится и« отскочит ». Однако, когда я запускаю свое приложение, все, что я вижу, это кружок в верхней части экрана, который выпадает на экран. Что я делаю не так?
Первоначально спросила меня, почему мяч не падал и не подпрыгивал. Не просто почему это было неподвижно. Я редактировал код в вопросе, а также заключительную проблему, чтобы включить ваше предложение, но, к сожалению, я все еще испытывал проблемы. Вы указали на свой пример кода в своей книге, который я сделал, и увидели соответствующий блок кода, в котором вы добавили поведение в свой метод doButton, но я, к сожалению, до сих пор не нашел решения. – syedfa