有没有办法在ios11中指定Uicontextualaction的宽度



在UITATION VIEWROWACTION中,可以通过更改标题并放置空格来操纵动作的宽度。您使用的空间越多,您的动作将在行上占据的更宽区域。

使用新的uicontextualaction,将空格放在标题中没有任何作用。操作系统确切地确定动作有多少空间。我需要显示5种不同的操作选项,并且在较小的设备上,我无法再适合5。有人知道一种控制这些区域大小的方法吗?

func setupAction(_ indexVar: Int) -> UIContextualAction {
    let editAction = UIContextualAction(style: .normal, title:  "   ", handler: { (ac:UIContextualAction, view:UIView, success:(Bool) -> Void) in
        //do something
        success(true)
    })
    editAction.image = UIImage(named: "TestImage")
    editAction.backgroundColor = .red
    return editAction
}

在ios11中似乎仅接受特定尺寸的图像或文本的图像。

另一个选项(我不建议这样做)是将手势添加到tableview。

或将手势添加到tableViewCell;就像,最初在自定义单元格中创建一个视图,然后将pangesturerognizer应用于单元格中的此视图。添加自定义单元格所需的按钮,当您在自定义单元格中刷动视图时,自定义单元格中的按钮应可见。

tldr :使用任何现有框架,或者暂时制作自己的框架。

我已经在iOS 11上处理了几天。我能得到的最好的结果是编程添加透明空间到图像的底部,以填充行的全高度。这样,将 clipstobounds 设置为单元格,标题位于单元格的视图之外和无形的位置,我可以使用任何字符来增加动作按钮的宽度,例如" xxxxxx"字符串。<<<<<<<<<<<</p>

但是,在某些情况下,即使我设置了剪贴器,仍然可以看到标题。为了最大程度地减少其可见度,我将其设置为边缘的空间和点,例如"。(space)(space)(space)。

最终,由于标题(由点和空格组成)仍然可见,我最终在tableviewcell中创建自己的动作按钮。

相关内容

  • 没有找到相关文章

最新更新