swift - 将 SWRevealViewController 嵌入到您的应用程序中

Posted

技术标签:

【中文标题】swift - 将 SWRevealViewController 嵌入到您的应用程序中【英文标题】:swift - embedded SWRevealViewController to you application 【发布时间】:2015-06-24 12:26:41 【问题描述】:

我将 SWRevealViewController 集成到我的项目中

我的项目流程是 视图控制器 ---> SWRevealViewController --> 菜单 --> 导航-->前视图

从我的初始视图控制器到 SWRevealViewController 的 segue 方法是模型

我的问题是当我第一次在前视图中打开切换时

它给了我空菜单(表格视图)

我的前视图代码

@IBOutlet weak var open: UIBarButtonItem!
    @IBOutlet weak var result: UILabel!

    @IBAction func showmore(sender: AnyObject) 
        performSegueWithIdentifier("resdes", sender: sender)
    



    override func viewDidLoad() 
        super.viewDidLoad()


       var res =  Uti.get_result()
        result.text = res.description

        open.target = self.revealViewController()
        open.action = Selector("revealToggle:")
        self.view.addGestureRecognizer(self.revealViewController().panGestureRecognizer())

        // Do any additional setup after loading the view.
    

我的后码

class slidemenuVC : UITableViewController

    var menuItems = [String]()

    override func viewDidAppear(animated: Bool) 
        menuItems = ["Result","About us","References","Rest Test"]
    

    override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int 
        return menuItems.count
    

    override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell 
        var cell = tableView.dequeueReusableCellWithIdentifier(menuItems[indexPath.row], forIndexPath: indexPath) as UITableViewCell

        cell.textLabel?.text = menuItems[indexPath.row]
        return cell

    



第二个问题:

当我按下第一个菜单项时,导航消失

应该是这样有切换的

【问题讨论】:

后视控制器上有什么?如果您在那里遇到问题,那么我们需要查看代码 我更新我的答案,谢谢你的关注 你是否在方法上设置了断点来获取单元格以查看它是否被执行? 我解决了第一个问题,viewDidAppear 错误应该是 viewDidLoad 【参考方案1】:
var cell = tableView.dequeueReusableCellWithIdentifier(menuItems[indexPath.row], forIndexPath: indexPath) as UITableViewCell

错了。您需要您的标识符必须是 uitableviewcell 中的实际单元格 ID

【讨论】:

以上是关于swift - 将 SWRevealViewController 嵌入到您的应用程序中的主要内容,如果未能解决你的问题,请参考以下文章

swift 如何将Swift 3内置的cocoapod更新为Swift 4

将代码从 Swift 2 更改为 swift 4

将 Swift 应用程序的组件划分为 Swift 模块

将 swift 2.3 转换为 swift 3 错误

将swift 2视频代码转换为swift 3视频代码

将 GameViewController.swift 链接到 GameScene.swift