2012-06-12 60 views
3

我試圖創建MonoTouch的自定義進度。我創建了一個用定時器重畫一行的類。我的問題是,當調用SetNeedsDisplay時,視圖不會自行重繪。只有在提供觸摸時,SetNeedsDisplay纔會調用OnDraw方法。我必須做些什麼才能使OnDraw方法無需觸摸就能被調用?SetNeedsDisplay與MonoTouch的

+0

你叫SetNeedsDisplay在正確的線程?如果您在定時器線程中調用它,它不會被繪製(看不接受的答案[這裏](http://stackoverflow.com/questions/1503761/what-is-the-most-robust-way-以力-A-的UIView到重繪)) – basti

+2

你剛纔救了我的很多時間我的朋友。只需鍵入一個答案,我必須調用主線程(InvokeOnMainThread),以便我可以獎勵你。 – alecnash

+0

剛剛寫了一個簡短的回答:) – basti

回答

3

您需要確保調用在UI線程SetNeedsDisplay,否則它不會重繪視圖。 Source