当前位置: 首页 > 知识库问答 >
问题:

swift上右侧的SWRevealViewController

戚英逸
2023-03-14

我正在使用SWRevealViewController库在swift中制作一个滑出菜单,但我很难将这个菜单放在右侧。我在图书馆的描述上看到了这个注释

// Optional right view controller, can be nil if not used
@property (nonatomic) UIViewController *rightViewController;

但我对目标C不熟悉,我无法在SWIFT上做到这一点。这是我的默认(左)菜单代码的一部分:

class ViewController: UIViewController, AVAudioPlayerDelegate {

@IBOutlet weak var playlistOutlet: UIBarButtonItem!

override func viewDidLoad() {
    super.viewDidLoad()

    playlistOutlet.target = self.revealViewController()
    playlistOutlet.action = Selector("revealToggle:")

    self.view.addGestureRecognizer(self.revealViewController().panGestureRecognizer())

}
}

并且从SWRevealViewController库调用revealViewController

共有3个答案

宗政浩慨
2023-03-14

您能试试这段代码吗:

    var storyboard = UIStoryboard(name: "Main", bundle: nil)
    var sidemenuViewController = storyboard.instantiateViewControllerWithIdentifier("sideMenu") as! SideMenuViewController
    sidemenuViewController.delegate = self
    revealViewController().rightViewController = sidemenuViewController
    revealViewController().delegate = self
    sideMenuItem.target = self.revealViewController()
    self.revealViewController().rightViewRevealWidth = self.view.frame.width * 0.8
    sideMenuItem.action = Selector("rightRevealToggle:")
滕渝
2023-03-14

雨燕3

if revealViewController() != nil{
        sideMenuBtn.target = revealViewController()
        sideMenuBtn.action = #selector(SWRevealViewController.rightRevealToggle(_:))
        view.addGestureRecognizer(self.revealViewController().panGestureRecognizer())
    }

将segue标识符值设置为sw_right而不是sw_rear

  • 为我工作

更好的选择:https://github.com/jonkykong/sidemenu

慎弘化
2023-03-14

我遵循了这个解决方案,在控制器的前侧边视图中使用了这个:

override func viewDidLoad() {
    super.viewDidLoad()

    if self.revealViewController() != nil {
        favoritesButton.target = self.revealViewController()
        favoritesButton.action = "rightRevealToggle:"
        self.view.addGestureRecognizer(self.revealViewController().panGestureRecognizer())
    }
}

别忘了先创建到项目栏按钮的出口。在情节提要中,将segue值设置为sw_right

一开始这对我不起作用,但一个清洁工帮了我的忙。

 类似资料:
  • 我有一个网页与一个主div在中心,可以滚动通过垂直。 我想有一个固定的菜单,停留在页面的右手边。但是,如果我使用'position:fixed',当我调整页面大小使其小于中央div时,菜单与中央div重叠 相反,我希望中央div的最小宽度优先,并且固定菜单只出现在右滚动在这种情况下。 一个固定的菜单是否可以放在中央div的右边,而不是固定在浏览器的右边? 对不起,如果这个问题不清楚,我很乐意回答评

  • 我有一个带有类属性。我无法改变这一点。 我试图在它的右边浮动一个较小的div,但是,它总是出现在父div的下面。我必须如何标记CSS?

  • 在指定字符串右侧补0到指定长度。 调用: web3.utils.padRight(string, characterAmount [, sign]) web3.utils.rightPad(string, characterAmount [, sign]) // 别名 参数: string - String: 要进行右补0的字符串 characterAmount - Number: 补齐后的总长

  • 问题内容: 我试图在 UINavigationBar的* 右侧添加 自定义视图 。我尝试了以下操作,但是视图未显示!请帮助,在此先感谢! * 问题答案: //创建uiview并添加三个自定义按钮

  • 问题内容: 这个问题源于-其他解包概述,据我所知,它存在于Python 3.5中(并且没有反向移植到)。具体来说,在“ 缺点 ”部分中,注意以下几点: 虽然原因是一, ,原因是一个。这样做的原因可能会使不熟悉该结构的人感到困惑。 对于第一种情况,确实确实存在: 在第二种情况下,创建了: 不熟悉这个概念,我很困惑。谁能解释这种行为?加星标的表情是否会根据其所在的侧面而有所不同? 问题答案: 当还考虑

  • 问题内容: 我正在构建一个状态栏应用程序,并希望根据用户单击左侧还是右侧来调用不同的操作。这是我到目前为止的内容: 没有调用我的函数,也找不到我们的原因。感谢您的帮助! 问题答案: 你有没有尝试过: 然后看到该功能中按下了哪个鼠标键? 所以看起来像… https://github.com/craigfrancis/datetime/blob/master/xcode/DateTime/AppDel