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

滚动视图中的快速弹出窗口

戎元忠
2023-03-14

我有一些子视图的滚动视图。在这个子视图中,我有其他子视图。

我想展示一个固定在这个“嵌套”子视图之一上的popover。

我正确地显示了popover,它被锚定到正确的子视图,但是每当我滚动scrollview时,popover不会随着scrollview移动。每次我水平滚动滚动滚动视图时,我希望我的popover移动并调整其“x”原点。

这是我用来呈现弹出窗口的代码。

func showAlarmViewController(notification: NSNotification){

    troubleViewController = TroubleshootViewController()
    troubleViewController!.modalPresentationStyle = .Popover
    troubleViewController!.preferredContentSize = CGSizeMake(300.0, 150.0)

    popoverMenuViewController = troubleViewController!.popoverPresentationController
    popoverMenuViewController!.permittedArrowDirections = .Down
    popoverMenuViewController!.delegate = self
    popoverMenuViewController!.passthroughViews = [self.detailScrollView]
    popoverMenuViewController!.sourceView = (notification.object as! UIView).superview
    popoverMenuViewController!.sourceRect = CGRect(x: -100, y: 100, width: 300, height: 150)

    presentViewController(
        troubleViewController!,
        animated: true,
        completion: nil)

}

有什么帮助吗?谢谢!

共有1个答案

百里业
2023-03-14

您必须将您的popoverMenuViewController添加到scrollview的嵌套子视图之一或scrollview中

scrollview.addsubview(popoverMenuViewController)  

如果popoverMenuViewController控制器是UIViewController,那么在scrollview中添加容器视图,并将该容器视图链接到popoverMenuViewController.稍后您可以添加容器视图作为scrollview的子视图。

这里是如何实现容器视图的链接。如何在iOS中使用“容器视图”

http://spin.atomicobject.com/2015/07/21/ios-container-views/

或者在scrollview的嵌套子视图中添加popoverMenuViewController

subviewofscrollview.addsubview(popoverMenuViewController)

根据添加此popoverMenuViewController的子视图内容大小设置popoverMenuViewController锚定。

 类似资料:
  • 我的视图中有六个UITextFields,我想决定视图是否必须移动。在移动视图之前,如何检查选择了哪个文本字段? 这是我显示键盘和移动视图的代码:

  • 在ListView上,您可以使用一个快速滚动条,它允许您拖动滚动条,以便轻松滚动到您希望的任何位置(使用fastScrollEnabled属性) 再加上“SectionIndexer”类和一些可选的属性,您可以在使用此滚动条时看到一个漂亮的弹出窗口(此处链接)。 这种东西显示在联系人应用程序上,这样你就可以很容易地滚动到特定的字母。 RecyclerView似乎没有这些。甚至连快速滚动都没有。 如

  • 滚动条在滚动时大致移动。启用fastcrollenable=“true”时,如何使滚动条平稳移动? 我已经找了一个月了。在android文档、stackoverflow和其他网站上都有,但我找不到。 在我的listview中,我只是添加......

  • 我看到了另一个这样的问题,但是答案对我不起作用,我不知道为什么。为什么超过50px时我的popover内容不滚动?还有一个附带问题:在我的变量a中,我的换行符在弹出窗口中不起作用。有人知道为什么吗?

  • 我正在工作一个Linkedin网页刮痧项目。我正在尝试获得感兴趣的公司列表(注意,我没有使用API)。这是一个动态的网站,所以我需要滚动,而刮公司的名字。我知道如何在主窗口中这样做,但由于兴趣是一个弹出窗口,这种滚动解决方案不起作用。到目前为止我的代码是:

  • 问题内容: 我们有一个收藏夹视图。我制作了一个日历,水平显示日期&水平滚动日期。现在在屏幕上,我只看到3-4个日期。现在我想在显示日历屏幕时自动滚动到特定的选定日期,所以我要滚动到的日期尚不可见。 为此,我得到了特定单元格的索引路径。现在,我尝试将其滚动到特定的indexpath。 请告诉我如何实施? 问题答案: 在您的控制器中,您可以编写代码以滚动到集合视图的特定索引路径。