我用
Swift创建了一个新的OSX应用程序.从视图开始,在表视图中拖动到视图中.然后我按住Ctrl键并从我的表视图中拖动,将AppDelegate添加为我的dataSource和delegate.最后,按住Ctrl并单击并从AppDelegate拖动,为myTableView创建一个IBOutlet到表视图.
为什么会这样?使用XCode版本6.1(6A1027).
构建以下结果:
import Cocoa class AppDelegate: NSObject,NSApplicationDelegate,NSTableViewDataSource,NSTableViewDelegate { @IBOutlet weak var window: NSWindow! @IBOutlet weak var myTableView: NSTableView! func applicationDidFinishLaunching(aNotification: NSNotification?) { } func numberOfRowsInTableView(aTableView: NSTableView!) -> Int { let numberOfRows:Int = getDataArray().count return numberOfRows } func tableView(tableView: NSTableView!,objectValueForTableColumn tableColumn: NSTableColumn!,row rowIndex: Int) -> AnyObject! { var newString: (AnyObject?) = getDataArray().objectAtIndex(rowIndex).objectForKey(tableColumn.identifier) println(newString!) return newString! } func applicationWillTerminate(aNotification: NSNotification?) { // Insert code here to tear down your application } func getDataArray () -> NSArray{ var dataArray:[NSDictionary] = [["FirstName": "Debasis","LastName": "Das"],["FirstName": "Nishant","LastName": "Singh"],["FirstName": "John","LastName": "Doe"],["FirstName": "Jane",["FirstName": "Mary","LastName": "Jane"]]; //println(dataArray); return dataArray; } }
当我在表格视图中拖动文本单元格时,还会添加一个表视图单元格.我真的不确定为什么,但2年前的这个答案帮助我搞清楚了.
NSTableView only displaying “Table View Cell”
原文链接:https://www.f2er.com/swift/443724.html