使用xib自定义UIToolBar [Swift 3]

时间:2016-12-01 03:47:45

标签: ios swift xib uitoolbar

我可以在UIToolBar文件中创建自定义Xib吗?

我想在最左边创建一个带有完成按钮的工具栏,在左侧设置最后/下一个按钮。但我想确保约束条件能够适合每种手机大小。有一个例子吗?

1 个答案:

答案 0 :(得分:2)

是的,你可以。首先选择一个xib作为模板。将模板命名为" toolbar"。 create the xib

然后删除它为您提供的默认视图。转到右下角的对象库并拖出工具栏。 drag out a toolbar xib

您将在最左侧获得默认的条形按钮项。将其重命名为"完成"然后拖出另一个栏按钮项并将其重命名"下一步"或者"最后"。 rename bar button items

现在,创建一个新文件。选择Cococa Touch Class并使其成为UIToolBar的子类。 enter image description here

返回工具栏xib,使其类成为您刚刚创建的Cocoa Touch类。在我的例子中,我将我的名字命名为ToolBarExample。

现在转到ViewController类。在ViewDidLoad中添加以下内容。

   override func viewDidLoad() {
    super.viewDidLoad()
    // Do any additional setup after loading the view, typically from a nib.

    let toolBar = UINib(nibName: "toolbar", bundle: nil).instantiate(withOwner: nil, options: nil)[0] as! ToolBarExample

    toolBar.frame = CGRect(x: 0, y: self.view.frame.size.height - 46, width: self.view.frame.size.width, height: 46)

    toolBar.sizeToFit()

    view.addSubview(toolBar)

}

您可以通过调整框架来更改工具栏的比例,大小和位置。您还可以从Atrributes和Size Inspector调整工具栏xib及其栏按钮项。此示例的最终产品应在模拟器中如下所示。

Final Product in Simulator