2015-06-14 20 views
9

是否有可能創建在界面生成一個NSTableView具有行的預設數量,使得該表可以被用作一種形式?靜態NSTableView的預設行

予有需要的各種標籤和文本框的形式的圖。我試過使用單個標籤和文本框,但它看起來很差。與NSForm一樣,這又增加了佈局和單元格內容的一些限制。

所以表視圖看起來表單視圖非常拋光。我會最佳想做的是拖7 TextTableViewCell s轉換在IB靜態NSTableView和第二列行設置在第一列標籤和動態設定值。

但如果我建立它在我的七行消失。我怎樣才能讓NSTableView動作?

回答

1

正如@Anc Ainu指出的那樣,從OS X 10.10開始,可以在OS X中使用靜態tableViews。您必須將usesStaticContents屬性設置爲NSTableView,以使其表現得像iOS上的靜態tableView。根據文檔:

靜態表不依賴於數據源來提供行數。靜態表格視圖的內容是在設計時設置的,並且可以根據需要以編程方式進行更改。通常,在設置靜態表視圖後,不要更改其內容。

在Xcode中,您添加到靜態表中的所有行被保存在相應的筆尖或故事板文件,並加載了表在運行時的休息。您可以使用insertRowsAtIndexes:withAnimation:方法以編程方式將錶行添加到靜態表視圖。以編程方式添加行時,表視圖委託必須實現tableView:viewForTableColumn:row:方法,以便爲任何新行提供相應的視圖。您也可以使用removeRowsAtIndexes:withAnimation:方法隨時刪除行。

請記住,該屬性是OS X 10.10及更高版本中可用的屬性。

+1

OSS 10.10提供的'usesStaticContents'怎麼樣?鏈接:https://developer.apple.com/library/mac/documentation/Cocoa/Reference/ApplicationKit/Classes/NSTableView_Class/#//apple_ref/occ/instp/ NSTableView/usesStaticContents – AncAinu

+0

你是完全正確的!我不知道這個屬性。馬上編輯我的回答!謝謝! – mangerlahn

+1

是否可以在IB的表格視圖中創建這些靜態視圖? –