     
     /// Equivalent to UITableView's cellForRowAtIndexPath - called only for section title cell (the one that toggles expansion)
     func expandableTableView(tableView: UITableView, titleCellForSection section: Int, expanded: Bool) -> UITableViewCell
+    
+    /// The height of cells within an expandable section
+    optional func expandableTableView(tableView: UITableView, heightForRowInSection section: Int) -> CGFloat
+    
+    /// The height of the expandable section title cell
+    optional func expandableTableView(tableView: UITableView, heightForTitleCellInSection section: Int) -> CGFloat
 }
 
 @objc public protocol NAExpandableTableViewDelegate {

    
    public func numberOfSectionsInTableView(tableView: UITableView) -> Int {
        return self.dataSource?.numberOfExpandableSectionsInTableView(tableView) ?? 0
    }
    
    public func tableView(tableView: UITableView, heightForHeaderInSection section: Int) -> CGFloat {

    
    private var expandDict = [Int : Bool]()
    
    let defaultRowHeight: CGFloat = 44
    
    public init(dataSource: NAExpandableTableViewDataSource? = nil, delegate: NAExpandableTableViewDelegate? = nil) {
        super.init()
        self.dataSource = dataSource
