public override void Initialize() { PLayer layer = Canvas.Layer; PNode a = PPath.CreateRectangle(0, 0, 100, 80); PNode b = PPath.CreateRectangle(0, 0, 100, 80); layer.AddChild(a); layer.AddChild(b); PActivity a1 = a.AnimateToPositionScaleRotation(200, 200, 1, 0, 5000); PActivity a2 = b.AnimateToPositionScaleRotation(200, 200, 1, 0, 5000); a2.StartAfter(a1); }
public override void Initialize() { long currentTime = PUtil.CurrentTimeMillis; // Create a new node that we will apply different activities to, and // place that node at location 200, 200. aNode = new PNode(); //PPath.CreateRectangle(0, 0, 100, 80); aNode.SetBounds(0, 0, 100, 80); aNode.Brush = new SolidBrush(Color.Blue); PLayer layer = Canvas.Layer; layer.AddChild(aNode); aNode.SetOffset(200, 200); // Create a new custom "flash" activity. This activity will start running in // five seconds, and while it runs it will flash aNode's brush color between // red and green every half second. The same effect could be achieved by // extending PActivity and override OnActivityStep. PActivity flash = new PActivity(-1, 500, currentTime + 5000); flash.ActivityStepped = new ActivitySteppedDelegate(ActivityStepped); Canvas.Root.AddActivity(flash); // Use the PNode animate methods to create three activities that animate // the node's position. Since our node already descends from the root node the // animate methods will automatically schedule these activities for us. PActivity a1 = aNode.AnimateToPositionScale(0f, 0f, 0.5f, 5000); PActivity a2 = aNode.AnimateToPositionScale(100f, 0f, 1.5f, 5000); //PActivity a3 = aNode.AnimateToPositionScale(200f, 100f, 1f, 5000); PActivity a3 = aNode.AnimateToPositionScale(20f, 200f, 1f, 5000); // the animate activities will start immediately (in the next call to PRoot.processInputs) // by default. Here we set their start times (in PRoot global time) so that they start // when the previous one has finished. a1.StartTime = currentTime; a2.StartAfter(a1); a3.StartAfter(a2); // or the previous three lines could be replaced with these lines for the same effect. //a2.setStartTime(currentTime + 5000); //a3.setStartTime(currentTime + 10000); base.Initialize(); }