2012-07-08 162 views
2

我即將將我的五合一客戶端移植到iOS平臺。本來我是用Java設計的。有15 * 15個字段需要顯示。在個人電腦上,我用單個對象代表領域(事件處理等)。我不確定在移動平臺上做同樣的事情是否是個好主意(我的意思是使用225個手勢識別器聽起來不太有希望)。還有一種方法將所有這些字段合併爲一個大視圖,通過與屏幕座標進行一些數學運算,負責繪圖和事件處理。我個人更喜歡第一種方法,因爲它更基於OO。你認爲如果性能是主要的,我應該選擇哪一種?提前致謝!iOS桌面遊戲架構

回答

4

如果性能是主要的,你可以有一個自定義繪製的視圖,使用UIGestureRecognizer得到CGPoint,只重畫區(廣場)使用UIView影響:

- (void)drawRect:(CGRect)rect 

這是容易做到的是數學。

但是,根據控件和每個單元格的複雜性,該代碼可能難以維護。使用子視圖創建一個分層控件,其中每個子視圖負責繪製圖形,處理手勢等...更易於維護,代碼將變得更加清晰。它會有更多的開銷嗎?是。這會是一個問題嗎?可能不是。所以,你需要嘗試並衡量。通常使用子視圖創建聚合視圖,並且每個子視圖都知道如何繪製和處理手勢 - 這就是可可觸摸的全部內容。

+0

我會試一試,並且像我在Java中那樣執行它,而這些字段有一些非常複雜的行爲!謝謝! – developer110 2012-07-08 14:41:45