0

我用来在iMessage 扩展中创建贴纸浏览器的代码是:

func createStickerBrowser() {

    let controller = MSStickerBrowserViewController(stickerSize: .small)

    view.translatesAutoresizingMaskIntoConstraints = false

    addChildViewController(controller)
    view.addSubview(controller.view)

    controller.stickerBrowserView.dataSource = self
    controller.view.backgroundColor = UIColor.green

    let leading = NSLayoutConstraint(item: controller.view, attribute: .leading, relatedBy: .equal, toItem: view, attribute: .leading, multiplier: 1, constant: 0)
    let trailing = NSLayoutConstraint(item: controller.view, attribute: .trailing, relatedBy: .equal, toItem: view, attribute: .trailing, multiplier: 1, constant: 0)
    let bottom = NSLayoutConstraint(item: controller.view, attribute: .bottom, relatedBy: .equal, toItem: view, attribute: .bottom, multiplier: 1, constant: 0)
    let top = NSLayoutConstraint(item: controller.view, attribute: .top, relatedBy: .equal, toItem: view, attribute: .top, multiplier: 1, constant: 0)

    view.addConstraints([leading, trailing, top, bottom])
}

在此处输入图像描述

但我的故事板看起来像这样:

在此处输入图像描述

为什么它没有添加到视图层次结构中?我需要把它放在按钮旁边。按钮是固定的,但贴纸浏览有自己的滚动。这个怎么做?

4

1 回答 1

0

放置或替换 MSMessagesAppViewController 类的 viewWIllAppear 方法:

override func viewWillAppear(_ animated: Bool) {
    super.viewWillAppear(animated)

   requestPresentationStyle(.expanded)           
}
于 2017-04-17T09:23:29.037 回答