Chcę zbudować aplikację kakao z listą pozycji bardzo podobnych do listy rzeczy do zrobienia w Item.app (see the screencast). Powstaje pytanie, czy powinno się używaćJak zaimplementować niestandardową listę w Cocoa?
- tableview,
- CollectionView lub
- Webview.
Myślę, że może z nimi współpracować, ale który najlepiej pasuje do poniższych wymagań?
- mieć listę wpisów -> 1 kolumna & wiele wierszy
- zmiana kolejności przeciągnij & spadek
- wybrać pojedynczy wpisy & użyj przycisków dla działań takich jak usuwania
- otworzyć wpis: wiersz powinien rozwiń, aby wyświetlić więcej pól wprowadzania
- dostosowany wygląd: zaokrąglone rogi, cień, gradient w tle
Do tej pory moje badania mówią, że TableView ma większość funkcjonalności, ale jest trudniejsze do dostosowania w swoim wyglądzie, CollectionView nie ma oporu & upuść (prawda?), Ale jest łatwy w projektowaniu, a WebView wymagałby wiele wysiłku aby nie zaszkodzić użytkownikowi i nie mogę powiązać mojego modelu bezpośrednio z polami wejściowymi.
Jakie zalety i wady mi brakuje, a co poleciłbyś użyć?
Hm, nie rozszerza wiersz w NSOutlineView po prostu ujawnić więcej "subrows"? Wolałbym zmienić wysokość wierszy i umieścić w niej więcej rzeczy. Czy to ma sens? – Christian
Tak. Możesz faktycznie użyć widoku tabeli i zaimplementować metodę delegatów 'tableView: heightForRow:', do której dodali obsługę w Tiger: http://developer.apple.com/documentation/Cocoa/Reference/ApplicationKit/Classes/NSTableView_Class/Reference/ Reference.html # // apple_ref/occ/instm/NSObject/tableView: heightOfRow: –
Potrzebna Ci będzie również niestandardowa komórka, którą możesz przełączać między różnymi stanami rozwinięcia. –