swift UI专项训练18 ToolBar工具条

前端之家收集整理的这篇文章主要介绍了swift UI专项训练18 ToolBar工具条前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

工具条是个很重要的内容,什么是工具条呢,它一般显示在屏幕下方,显示一些按钮或者文字,我们可以用系统现成的,也可以用我们自定义的。之前我们讲的都是需要代理模式的,Dlelegate,委托模式。ToolBar属于目标操作,不需要代理。网界面上拖一个Toolbar拖到界面底部


toolbar的元素如下:


Style主要是设置样式,比如浅色和黑色的。

Bar Tint是设置颜色。

Item是工具栏上的按钮,跟导航栏很相似。我们可以选择系统中已有的,比如我们选择done


那么toolbar上的按钮就会变成这样:


样式非常多,大家可以试试。工具条的行为就比较特殊了,它不是代理,它是目标操作,那么目标是谁,操作是什么。现在来体验一下,老规矩,把组件和控制器连线。不需要委托,那么可以在控制器中直接进行操作.现在我准备把工具条设置两个按钮,一左一右,左边的是删除按钮:

var trashItem : UIBarButtonItem {
    return UIBarButtonItem(barButtonSystemItem: .Trash,target: self,action: "trashclick:")
    }
    
    
    func trashclick(barItem: UIBarButtonItem) {
    println("您按了删除")
    }



target就是目标,而action就是操作。action中使用了注册,所以transhclick后面要跟着冒号,使用的系统样式是Trash,这是系统自带的是一个垃圾桶的样式。

添加一个分享按钮,代码类似:

var shareItem : UIBarButtonItem {
        return UIBarButtonItem(barButtonSystemItem: .Reply,action: "shareclick:")
    }
    
    
    func shareclick(barItem:UIBarButtonItem) {
        println("您按了分享")
    }



再在两个按钮间加一个空格,不需要代理和操作:

var spaceItem : UIBarButtonItem {
        return UIBarButtonItem(barButtonSystemItem: .FlexibleSpace,target: nil,action: nil)
    }

现在我们定义一个初始化按钮的方法
func configToolbar(){
    let items = [
        trashItem,spaceItem,shareItem
        ]
    toolbar1.setItems(items,animated: true)
    }

别忘了最后在viewdidload方法加上我们上面定义的方法,现在运行来看一下效果



效果如图,如果中间没有加那个空格的话这两个按钮就挨在一起了。我们点击一下删除按钮,试试效果


好的证明我们实现了。

猜你在找的Swift相关文章