私はついに最初の小さな osx アプリを完成させることができました。私は自分自身をとても誇りに思っています! しかし、私が本当に従おうとしている obj-c MVC アプローチとはまだ混乱しています。さまざまなチュートリアルをすべて読んでも、最終的な手がかりは得られません。Hillegass の書籍「cocoa programming for MAC OS X」を使用しています。次のパターンは、コントローラー クラスでユーザー入力をtableview
ビアにバインドするために使用されます。NSArrayController
- (IBAction)pushAdd:(id)sender {
ToDoItem *newToDo = [[ToDoItem alloc] init];
[newToDo setValue:[_inputName stringValue] forKey:@"name"];
[newToDo setValue:[NSNumber numberWithDouble:[_inputNomValue doubleValue]] forKey:@"nomValue"];
[newToDo setValue:[NSNumber numberWithDouble:[_inputTolerancePlus doubleValue]] forKey:@"tolerancePlus"];
[newToDo setValue:[NSNumber numberWithDouble:[_inputToleranceMinus doubleValue]] forKey:@"toleranceMinus"];
[newToDo setValue:[NSString stringWithFormat:@"%@",[_inputDistribution titleOfSelectedItem]] forKey:@"distribution"];
[newToDo setValue:[NSString stringWithFormat:@"%@",[_inputDirection titleOfSelectedItem]] forKey:@"direction"];
[toDoItemArrayController addObject:newToDo];
...
私の質問:
私のモデルクラスToDoItem
はエンティティを作成するための青写真として使用されるためToDoItem
、完全な情報はtoDoItemArrayController
(モデルではなく) コントローラー内に保存されます。しかし、配列情報を別の場所で使用する必要がある場合はどうすればよいでしょうか? ToDoItem
からのすべての情報を使用して、モデル クラスに追加の配列を定義する必要がありますtoDoItemArrayController
か? これまでの私の MVC の理解では、モデルには、後でコントローラーによって処理されるすべての情報が含まれている必要があります。