2014-11-24 20 views
6

Ich studiere jetzt iOS Entwicklung. Wenn ich eine richtige Ansicht hinzufüge und möchte, dass sie von der Schwerkraft beeinflusst wird, baue und betreibe meine Test-App, finde ich, dass sie nicht die Schwerkraft hat. Dies ist der viewDidLoad Code in meinem viewController.m:Warum UIKit Dynamics nicht funktioniert?

[super viewDidLoad]; 

// Do any additional setup after loading the view, typically from a nib. 
UIView *squre = [[UIView alloc] initWithFrame:CGRectMake(100, 100, 100, 100)]; 
squre.backgroundColor = [UIColor grayColor]; 
[self.view addSubview:squre]; 

UIDynamicAnimator *_animator = [[UIDynamicAnimator alloc] initWithReferenceView:self.view]; 
UIGravityBehavior *_gravity = [[UIGravityBehavior alloc] initWithItems:@[squre]]; 
[_animator addBehavior:_gravity]; 

Antwort

8

Ihre UIDynamicAnimator freigegeben wird, wenn viewDidLoad zurückkehrt. Es kann nichts animieren, wenn es freigegeben wird. Machen Sie eine Eigenschaft:

@property (nonatomic) UIDynamicAnimator *animator; 

und stellte es:

self.animator = [[UIDynamicAnimator alloc] initWithReferenceView:self.view]; 
+1

OH YEAH, DANK ~ –

Verwandte Themen