2014-06-08 72 views
-2

我有一個自定義的UITableViewController裏面有許多UITableViewCells,每個都有一個複選框。在自定義的UITableViewCell類中,有一個方法會在複選框被選中時發生。我也有一個NSMutableArray作爲UITableViewController的一個屬性,我希望每次選中該複選框時添加一個對象,但我無法訪問其他類。請幫忙嗎?從另一個類添加對象到NSMutableArray

+0

經過大量的搜索和寫作邏輯的這個問題,我發現了[TableViewCell Accessory的蘋果開發人員演示]的完美解決方案(https://developer.apple.com/library/ios/samplecode/Accessory/Introduction/Intro .html)。嘗試一下。 – Pawan

+0

@pawan - 你不應該搜索那麼難,因爲這個問題每天會被詢問一次,解決方案也很簡單。 –

+0

@HotLicks我沒有搜索這個問題,我告訴我的經驗,當我開始了我的職業生涯作爲ios應用程序開發人員。大約3年前,我找到了這個解決方案。 – Pawan

回答

2

如果您有自定義單元類,請創建單元的代表。

@class MyCustomTableViewCell; 

@protocol MyCustomCellDelegate <NSObject> 
- (void)cell:(MyCustomTableViewCell *)cell checkboxValueDidChange:(BOOL)checked; 
@end 

@interface MyCustomTableViewCell : UITableViewCell 
@property(nonatomic, weak) id <MyCustomCellDelegate> delegate; 
@end 

然後在tableView:cellForRowAtIndexPath:指定您的控制器作爲表格視圖單元格的委託。有了這個,你會收到回調。

- (void)cell:(MyCustomTableViewCell *)cell checkboxValueDidChange:(BOOL)checked { 
    // get cell's index path if you need 
    if (checked) { 
     [self.myMutableArray insertObject:myObject atIndex:myIndex]; 
    } 
} 

希望它有幫助。

相關問題