swift-按钮(Button)
2019-04-14 本文已影响0人
寒丶酥
1.按钮的创建
let button:UIButton = UIButton(CGReect(frame:(x:100,y:100,width:100,height:100)))
button.setTitle("按钮",for:.normal)
view.addSubview(button)
2.按钮的文字设置
button.setTitle("普通状态",for:.normal)//普通状态下的文字
button.setTitle("触摸状态",for:.highlight)//触摸状态下的文字
button.setTile("禁用状态",for:.disabled)//禁用状态下的文字
3.按钮的基础应用
//设置按钮的字体颜色
button.tintColor = .gray
//设置按钮的背景图片
button.setImage(UIImage(named:"icon"),forState:.normal)
//设置按钮文字的阴影颜色
button.setTitleShadowColor(UIColor.red,for:.normal)
//设置按钮文字的字体和大小
button.titleLabel?.font = UIFont(named:,size:)
//设置按钮的背景颜色
button.backgroundColor = .red
//设置按钮的圆角
button.layer.maskToBounds = true
button.layer.cornerRadius = 10
3.点击事件
//按钮的点击事件
button.addTarget(self,action:#selector(touch),for:.touchUpInside)
@objc func touch() {
}
常用的点击事件类型
touchDown:单点触摸,点击屏幕
touchDownRepeat:多点触摸按下事件,点击大于1的时候
touchDragInside:触摸在控件内拖动时
touchDragOutside:触摸在控件外拖动时
touchUpInside:在空间之内触摸并抬起事件
touchUpOutside:在控件之外触摸抬起事件
touchCancel:触摸取消事件,即一次触摸以为放上太多手指而被取消
4.省略文字
//省略尾部文字
button.titleLabel?.lineBreakMode = .byTruncatingTail
//省略头部文字
button.titleLabel?.lineBreakMode = .byTruncatingHead
//省略中间的文字
button.titleLabel?.lineBreakMode = .byTruncatingMiddle
//直接将多余的部分删除
button.titleLabel?.lineBreakMode = .byClipping
//自动换行(按词拆分)
button.titleLabel?.lineBreakMode = .byWordWrapping
//自动换行(按字符拆分)
button.titleLabel?.lineBreakMode = .byCharWrapping