         tableView = UITableView(frame: CGRect(x: 0, y: 60 + (menu?.bounds.size.height)!, width: view.bounds.size.width, height: view.bounds.size.height - 60 - (menu?.bounds.size.height)!), style: .plain)
         tableView?.register(UINib(nibName: "DHTutorialTableViewCell", bundle: nil), forCellReuseIdentifier: kTutorialCellReuseIdentifier)
         tableView?.mj_header = MJRefreshNormalHeader(refreshingBlock: {
-            self.handleTutorialData()
+            let currentIndex = self.menu?.currentSelectedIndex()
+            if let tutorialType = TutorialCategory(rawValue: currentIndex!) {
+                switch tutorialType {
+                    case .ALL:
+                        self.dataController?.requestTutorialAllWithCallback(callback: {
+                           self.renderTableViewCell()
+                        }())
+                    break
+                    case .NEWER:
+                        self.dataController?.requestTutorialNewerWithCallback(callback: {
+                           self.renderTableViewCell()
+                        }())
+                    break
+                    case .STEP:
+                        self.dataController?.requestTutorialStepWithCallback(callback: {
+                            self.renderTableViewCell()
+                        }())
+                    break
+                    case .SKILL:
+                        self.dataController?.requestTutorialSkillWithCallback(callback: {
+                            self.renderTableViewCell()
+                        }())
+                    break
+                }
+            }
         })
         tableView?.delegate = self
         tableView?.dataSource = self

            self.loadingView?.isHidden = true
            self.tableView?.reloadData()
        })
    }
    
    func segmentedMenu(didSelectIndex index: NSInteger) {

            switch dataType {
            case .ALL:
                dataController?.requestTutorialAllWithCallback(callback: {
                    DispatchQueue.main.asyncAfter(deadline: .now() + 3) {
                        self.tableView?.mj_header.endRefreshing()
                    }
                    self.renderTableViewCell()
                }())
                break
            case .NEWER:
                dataController?.requestTutorialNewerWithCallback(callback: {
                    DispatchQueue.main.asyncAfter(deadline: .now() + 3) {
                        self.tableView?.mj_header.endRefreshing()
                    }
                    self.renderTableViewCell()
                }())
                break
            case .STEP:
                dataController?.requestTutorialStepWithCallback(callback: {
                    DispatchQueue.main.asyncAfter(deadline: .now() + 3) {
                        self.tableView?.mj_header.endRefreshing()
                    }
                    self.renderTableViewCell()
                }())
                break
            case .SKILL:
                dataController?.requestTutorialSkillWithCallback(callback: {
                    DispatchQueue.main.asyncAfter(deadline: .now() + 3) {
                        self.tableView?.mj_header.endRefreshing()
                    }
                    self.renderTableViewCell()
                }())
                break
            }
