我試圖創建一個通用的,可重用的視圖,看起來像一個內襯的記事本。我決定處理問題的方式(在幾次設計迭代之後)是創建一個由UITextView
和UIView
組成的自定義視圖。我應該採用哪種設計方法來創建此自定義視圖?
當用戶滾動瀏覽文本行時,我想讓UIView跟蹤滾動方向。 這裏的關鍵是:在我的自定義視圖中,我需要更改一個子視圖的位置以響應另一個子視圖中的事件。東西需要協調這些變化...
現在,我想採取的一種方法是使用MVC設計模式。視圖控制器可以處理所有事件並相應地移動子視圖。這個MVC可以嵌入到其他MVC中。
通常,當使用MVC設計模式時,控制器將處理用戶事件並操縱模型和視圖。但是,我的自定義視圖沒有模型 - 我試圖做的是讓視圖管理它自己的子視圖,當用戶做一些滾動操作時。在我看來,是MVC設計模式是不適合在這裏有兩個原因:
- 沒有一個模型或邏輯特定於它在使用的程序
- 似乎對我來說,視圖應該負責處理改變視圖應該出現的用戶事件。
...但我可能是錯的,這就是我尋求幫助的原因。對於那些比我更有經驗並且可能已經做過很多次的人來說,這個問題是:
在這種情況下什麼類型的設計模式是合適的? MVC或...
您可以購買預先製作的視圖。這是一個付費實現:[DTNotePadViewController](http://www.cocoanetics.com/parts/dtnotepadviewcontroller/)。 – JoePasq 2012-03-15 04:24:57
是的...這正是我想要做的。除此之外,我更感興趣學習如何設計此人創建的自定義記事本視圖。至於保存筆記等,我會爲此創建一個視圖控制器,但我在設計自定義內襯記錄視圖並定義它的行爲方面有點失落。 – 2012-03-15 04:31:27
我認爲他的博客上有一些註釋。不確定他私密或公開的內容。 – JoePasq 2012-03-15 04:35:12