【问题标题】:Segmented control in action sheet IOS操作表 IOS 中的分段控制
【发布时间】:2015-07-23 11:55:51
【问题描述】:

我正在尝试以与苹果地图应用程序相同的方式在操作表中添加分段控件。

我找到了一种在操作表视图中添加为子视图的方法,但苹果不推荐这样做。我在某处发现了以下评论。

你可能要小心这个。苹果可能不喜欢它。从文档中:“UIActionSheet 不是为子类而设计的,也不应该将视图添加到其层次结构中。如果您需要提供比 UIActionSheet API 提供的更多自定义的工作表,您可以创建自己的工作表并使用 presentViewController 以模态方式显示它:动画:完成:。” – 埃里克·戈德堡 2014 年 3 月 4 日 2:28

任何人都可以建议我实现这一目标的方法。

【问题讨论】:

    标签: ios uisegmentedcontrol uiactionsheet custom-view uialertcontroller


    【解决方案1】:

    我也一直在努力解决这个问题。线索在左下角——线条并没有一直延伸到左边缘。它实际上是一个 UITableView,行之间的间隙实际上是具有自定义大小的空白节标题。

    我还没有完全实现它,但重要的是:

    1. 在情节提要中创建一个新的 UIViewController。
    2. 在 ViewController 属性选择器中将Presentation 设置为Over Current Context
    3. 在视图中,将Background 更改为Clear Color
    4. 添加一个 UITableView。设置左、下、右约束。设置 TableView 的高度,使其仅覆盖 View 的下半部分
    5. Style 更改为Grouped
    6. 像基于普通原型的 TableView 一样实现委托
    7. 从操作按钮创建一个到 ViewController 的 segue 并将 Segue 设置为 Present Modally

    【讨论】:

      【解决方案2】:

      这根本不是UIActionSheet。这是使用自定义 1UIPresentationController1 和 transitionDelegate 呈现的 UIViewController。它很容易分辨,因为它占据了酒吧并且与UIActionSheet 的风格不同。

      您可以简单地创建自己的 viewController 来管理您喜欢的视图,然后使用来自 iOS7 的新自定义转换 API 来呈现它。

      这里有一些资源可以帮助您入门。

      https://developer.apple.com/library/ios/documentation/UIKit/Reference/UIPresentationController_class/

      https://developer.apple.com/library/ios/samplecode/LookInside/Introduction/Intro.html

      http://www.raywenderlich.com/96062/custom-view-controller-presentation-transitions-swift

      http://www.teehanlax.com/blog/custom-uiviewcontroller-transitions/

      【讨论】:

        猜你喜欢
        • 2019-10-24
        • 2012-09-28
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-03-31
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多