2009-12-18 31 views
24

Tôi muốn chọn một hàng trong chế độ xem bảng theo lập trình, tôi tin rằng tôi sẽ sử dụng selectRowIndexes:byExtendingSelection: (đây có phải là phương thức đại biểu không?). Điều khác là làm thế nào tôi sẽ sử dụng phương pháp đó để chọn hàng thứ hai (trong thuật ngữ lập trình hàng 1)?Chọn một hàng trong một NSTableView Theo chương trình

Trả lời

76

Joshua, hãy đảm bảo sử dụng tài liệu dành cho nhà phát triển để xác định xem đó có phải là phương thức đại biểu hay không. Nếu nó là một phương thức ủy nhiệm, nó sẽ được đề cập trong các tài liệu cho NSTableViewDelegate.

Điều bạn đang tìm kiếm rất thẳng về phía trước.

Objective-C

NSIndexSet *indexSet = [NSIndexSet indexSetWithIndex:1]; 
[tableview selectRowIndexes:indexSet byExtendingSelection:NO]; 

Swift 2

let indexSet = NSIndexSet(index: 1) 
tableView.selectRowIndexes(indexSet, byExtendingSelection: false) 

Again. Đảm bảo tra cứu phương thức selectRowIndexes: byExtendingSelection trong tài liệu để xem thông số nào cần. Nó nói rằng một NSIndexSet là cần thiết. Sau đó tìm NSIndexSet và bạn sẽ khám phá cách sử dụng nó.

+0

Ok, tôi hiểu. Cảm ơn vì sự giúp đỡ của bạn. – Joshua

+0

Điều này dường như không hoạt động. Tôi đang sử dụng điều này với một dạng xem phác thảo nhưng nó vẫn hoạt động, phải không? Bởi vì NSOutlineView là một Sub-Class của NSTableView? – Joshua

+2

Điều này vẫn hoạt động. Hãy chắc chắn rằng các cửa hàng của bạn được kết nối và chắc chắn rằng bạn gọi phương pháp này sau khi xem đã được khởi tạo. Do đó, không gọi hàm này bằng phương thức "init", sử dụng - (void) awakeFromNib. –

Các vấn đề liên quan