2012-08-12 73 views

回答

0

在創建tableviewcell子類時,通過創建自己的init方法將它傳遞給父視圖實例的指針。然後將該指針作爲實例變量保存在您的子類中。這樣,當子類中發生某些事情時,你可以做任何你想要的東西。讓我知道你是否需要更多的幫助。

+0

能更多地討論這個?像一些例子?因爲我需要確保我可以獲得indexpath.row值。有關這個的一些例子? – 2012-08-13 04:16:28

1

可以在視圖層次查找父tableView

-(UITableView*) parentTableView 
{ 
    UIView* v = [self superview]; 
    while (v && ![v isKindOfClass:[UITableView class]]) { 
     v = [v superview]; 
    } 
    return v; 
} 
0

我建議設置UIViewController委託的UITableViewCells。你必須創建一個協議,並使其實現它。此外,您需要繼承UITableViewCell以添加委託屬性。

#import <Foundation/Foundation.h> 

@protocol YourTableViewCellDelegate 

    - (void)didTouchButton:(UIButton *)theButton; 

@end 

在爲UIButton檢查爲代表的存在,操作方法:

if (self.delegate != nil && [self.delegate respondsToSelector:@selector(didTouchButton:)]) { 
    [self.delegate performSelector:@selector(didTouchButton:) withObject:_theButton]; 
} 
相關問題