ios - 如何居中 KC FloatingActionButton

标签 ios swift2

我用 KCFloatingActionButton 做了一个按钮,下面是例子: https://github.com/kciter/KCFloatingActionButton

我需要让那个按钮居中,我可以在这部分代码中更改按钮右侧的填充:

@IBDesignable
public class KCFloatingActionButton: UIView {
// MARK: - Properties

/**
    `KCFloatingActionButtonItem` objects.
*/
public var items: [KCFloatingActionButtonItem] = []

/**
    This object's button size.
*/
public var size: CGFloat = 56 {
    didSet {
        self.setNeedsDisplay()
    }
}

/**
    Padding from bottom right of UIScreen or superview.
*/
public var paddingX: CGFloat = 160 {
    didSet {
        self.setNeedsDisplay()
    }
}
public var paddingY: CGFloat = 14 {
    didSet {
        self.setNeedsDisplay()
    }
}

但是我不知道如何使按钮居中,有人可以帮我吗?

最佳答案

如果你想使用 paddingX 和 paddingY 值作为原点使这个按钮居中,那么设置:

paddingX = (UIScreen.mainScreen().bounds.size.width - size)/2
paddingY = (UIScreen.mainScreen().bounds.size.height - size)/2

在这里,我假设您正在使用的 UIViewController 中没有导航栏。

如果你想使用 AutoLayout 将此按钮居中,则应将以下约束添加到 View 中。

let centerx = NSLayoutConstraint(item: KCFloatingActionButton, attribute: NSLayoutAttribute.CenterX, relatedBy: NSLayoutRelation.Equal, toItem: self.view, attribute: NSLayoutAttribute.CenterX, multiplier: 1, constant: 0)
let centery = NSLayoutConstraint(item: KCFloatingActionButton, attribute: NSLayoutAttribute.CenterY, relatedBy: NSLayoutRelation.Equal, toItem: self.view, attribute: NSLayoutAttribute.CenterY, multiplier: 1, constant: 0)

关于ios - 如何居中 KC FloatingActionButton,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36909772/

相关文章:

ios - 使物理体响应场但不响应其他物理体

ios - 当我尝试使用 tableView(moveRowAt :) 重新排序行时,TableView 行高缩小

ios - reloadRowsAtIndexPaths 的奇怪行为

ios - Swift:使用 FontAwesome 图标作为 UITabBarItem 图像

objective-c - tvOS:当按钮处于水平顺序时,将第一个按钮作为首选焦点 View

ios - 通过来自 UITextField 的 Int 可选变量收到 "fatal error: unexpectedly found nil while unwrapping an Optional value"

ios - UIFont 为自定义字体返回 nil

ios - 设置 TouchID "Enter Password"回退以开始编辑 UITextField

iphone - 在 UINavigationController 内的 UIViewController 之间切换

javascript - Webkit-playsinline 在 iphone 上