看板 MacDev 關於我們 聯絡資訊
我試了幾個程式碼: 發現它的確不會重新init,但是不知道為什麼經過IBAction設過的bool 會重新變成0 我在IBAction的最尾巴這樣寫: printf("\n%d",startOrNot); startOrNot=YES; printf("%d",startOrNot); 然後在drawRect裡這樣寫: printf("%d",startOrNot); if(startOrNot){ ...畫該畫的東西 } 猜猜看會有什麼結果? 0000000000000000000*n <-這是跑drawRect的,目前為止正常 按下IBAction的按鈕後 0100000000000000000000000 第一次按 000000000000000000... 1100000000 第二次 1100000000000000000... 第三次 每次再按按鈕時它顯示startOrNot已經是YES了 但drawRect還是讀到0 真的很詭異= =||| 我也有把printf("%d",startOrNot);放入init裡看看會怎樣 出來的結果很有趣:它會印兩次(都是0) 但之後就不會印了 所以至少它應該是沒有再次init才對 至於NSAnimation http://mattgemmell.com/2006/11/08/nsviewanimation-wtf 這人寫了一個測試的程式 NSAnimation的確是比NSViewAnimation這個package快 至於和NSView + NSTimer的動畫比起來我就不知道了... NSAnimation裡面有內建的timer和讓動畫平滑化的設計 不過這些我都還不知道該怎麼用 因為NSAnimation的程式碼比NSView的複雜好多... 要花些時間消化 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.224.55.115
dryman:Anyway, 還是謝謝yllan大的教學,原本它根本動不了 02/22 14:56
dryman:現在雖然沒辦法按按鈕後動,至少會動... 02/22 14:56
dryman:初始的時候讓它動可以一直動 02/22 14:57