2013-06-14 2 views
5

버퍼에서 데이터를 가져 와서 변경 내용을 가져 오는 UIView가 있습니다. 나는 10Hz에서 화면을 울리기를 원한다. 의 UIView는 창이라고, 이것은 내가의 ViewController 내부를 호출하는거야 방법입니다 :NSTimer를 사용하여 iOS 용 Xamarin에서 SetNeedsDisplay 호출

 //create graphics to display data 
     GraphPane pane = new GraphPane(); 
     pane.Frame = UIScreen.MainScreen.Bounds; 
     Add (pane); 

     //setup timer to update pane 
     NSTimer timer = NSTimer.CreateRepeatingTimer (0.1, delegate {pane.SetNeedsDisplay();}); 

이 (Pane.Draw가 호출되지 않습니다) 작동하지 않습니다, 나는 좋은 예를 찾을 수없는 것 어떻게하는지. 모든 제안을 부탁드립니다.

+0

'타이머'가 범위를 벗어날 때 할당이 해제됩니까? – CodaFi

+0

실제로 클래스 변수로 정의 된 타이머가 있으므로 그렇게해서는 안됩니다. – reza

답변

10
 timer = NSTimer.CreateRepeatingScheduledTimer (TimeSpan.FromSeconds (0.1), delegate { 
      pane.SetNeedsDisplay(); 
     }); 

내 문제가 해결되었습니다.

+0

변경 사항은 CreateReapeatingTimer에서 CreateRepeatingScheduledTimer로 변경되었습니다. 기본적으로 예약되지 않은 것으로 보입니다. – reza