22-Swift之UIIButton

作者: NetWork小贱 | 来源:发表于2017-06-01 13:29 被阅读58次

1、UIButton 的介绍

按钮是App开发中不可缺少的工具,主要是和用户交互触发某一个时间。但也有好多用法,后续再说。

2、UIButton 的属性和方法介绍

1、初始化

var NetWorkBtn = UIButton.init()
NetWorkBtn = UIButton.init(type: UIButtonType.custom)
/**
 创建按钮的类型
 UIButtonType
 custom : 定制按钮,前面不带图标,默认文字颜色为白色,无触摸时的高亮效果
 system : 前面不带图标,默认文字颜色为蓝色,有触摸时的高亮效果
 detailDisclosure : 前面带“!”图标按钮,默认文字颜色为蓝色,有触摸时的高亮效果
 contactAdd  : 前面带“+”图标按钮,默认文字颜色为蓝色,有触摸时的高亮效果
 infoLight : 为感叹号“!”圆形按钮
 infoDark : 为感叹号“!”圆形按钮
 */

2、设置大小

/**
 设置大小
 */
NetWorkBtn.frame = CGRect.init(x: 10, y: 70, width: 200, height: 60)

3、设置文字

/**
 设置文字
 UIControlState 状态
 normal : 默认
 selected : 选中
 disabled : 按钮不可点击的效果
 */
NetWorkBtn.setTitle("点一下", for: UIControlState.normal)
NetWorkBtn.titleLabel?.text = "点一下"
NetWorkBtn.setAttributedTitle(NSAttributedString.init(string: "点一下"), for: UIControlState.normal)

4、设置按钮文字的颜色

/**
 设置文字颜色
 */
NetWorkBtn.setTitleColor(UIColor.red, for: UIControlState.normal)

5、设置按钮的背景颜色

/**
 设置按钮背景色
 */
NetWorkBtn.backgroundColor = UIColor.magenta
/* 这是设置父类的颜色*/
NetWorkBtn.tintColor = UIColor.yellow

6、控制按钮的点击

/**
 控制按钮的点击
 */
NetWorkBtn.isEnabled = true
/* 禁止交互
 true : 可以交互
 false : 不可交互
 */
NetWorkBtn.isUserInteractionEnabled = true

7、设置按钮文字的大小

/**
 设置按钮文字的大小
 */
NetWorkBtn.titleLabel?.font = UIFont.systemFont(ofSize: 18)

8、设置按钮的图片

/**
 设置按钮的图片
 */
NetWorkBtn.setImage(UIImage.init(named: "test.png"), for: UIControlState.normal)

9、按钮的切角和描边

/**
 按钮的切角和描边
 */
NetWorkBtn.layer.masksToBounds = true
NetWorkBtn.layer.cornerRadius = 6.1
NetWorkBtn.layer.borderColor = UIColor.green.cgColor
NetWorkBtn.layer.borderWidth = 0.5

10、按钮的点击事件

/**
 按钮添加点击事件
 UIControlEvents
 常用的触摸事件类型:
 touchDown:单点触摸按下事件,点触屏幕
 touchDownRepeat:多点触摸按下事件,点触计数大于1,按下第2、3或第4根手指的时候
 touchDragInside:触摸在控件内拖动时
 touchDragOutside:触摸在控件外拖动时
 touchDragEnter:触摸从控件之外拖动到内部时
 touchDragExit:触摸从控件内部拖动到外部时
 touchUpInside:在控件之内触摸并抬起事件
 touchUpOutside:在控件之外触摸抬起事件
 touchCancel:触摸取消事件,即一次触摸因为放上太多手指而被取消,或者电话打断
 */
let  metohd = #selector(clickTap)
let  method1 = #selector(tapped(_:))
NetWorkBtn.addTarget(self, action:metohd, for: UIControlEvents.touchUpInside)

实现方法
func clickTap() {
print("被点击了")
}
func tapped(_ btn:UIButton) {

}

11、获取当前按钮的文字和图片

/**
 获取按钮当前的文字
 */
let title = NetWorkBtn.currentTitle
print(title!)

/**
 获取当前的图片
 */
let image = NetWorkBtn.currentImage
print(image!)

12、 按钮文字显示的类型

/**
 按钮文字显示的类型
 NSLineBreakMode
 byTruncatingHead:省略头部文字,省略部分用...代替
 byTruncatingMiddle:省略中间部分文字,省略部分用...代替(默认)
 byTruncatingTail:省略尾部文字,省略部分用...代替
 byClipping:直接将多余的部分截断
 byWordWrapping:自动换行(按词拆分)
 注意:当设置自动换行后(byWordWrapping 或 byCharWrapping),我们可以在设置 title 时通过 \n 进行手动换行。
 */
NetWorkBtn.titleLabel?.lineBreakMode = NSLineBreakMode.byClipping

相关文章

  • 22-Swift之UIIButton

    1、UIButton 的介绍 按钮是App开发中不可缺少的工具,主要是和用户交互触发某一个时间。但也有好多用法,后...

  • 22-Swift模式匹配

    1.模式(Pattern) 什么是模式?模式是用于匹配的规则,比如switch的case、捕捉错误的catch、i...

  • 十之

    博学之,审问之,慎思之,明辨之,笃行之。 励志之,健身之,涅槃之,弘毅之,自强之!

  • 读记|唐诗人:诗心煎红尘(二)

    愈之挫之 险之退之 借之济之 忠之犯之 勇之夺之 衰之立之 坚之韧之 载之言之 一代宗师 成之传之 字曰子厚 道解...

  • 《寄君归》

    思之念之 见之不忘 吾亦求之 求之不得 吾亦念之 兮之盼之 来之归之 欲予离之 得之兮之 心思念之 盼来归之 归之...

  • 飘零

    艾雪儿 难耐心中怦然之 抑之,控之,思之,忘之 能否任之,弃之,拥之,念之 山河为鉴 赴之,游之,悦之,相守之…

  • 《美》

    刚之美,软之美,善之美,心之美。 水之美,声之美,爱之美,景之美,笑之美,物之美,月之美。 仁之美,慈之美,德之美...

  • 众说纷云

    众说纷云 文‖曾之一 20200220 古人说 真之假之善之恶之美之丑之 今人说 真之假之善之恶之美之丑之 后人说...

  • 安沨

    博学之,审问之,慎思之,明辨之,笃行之。

  • 2019-01-13

    博学之、明辨之、慎思之、审问之、笃行之

网友评论

    本文标题:22-Swift之UIIButton

    本文链接:https://www.haomeiwen.com/subject/mwtefxtx.html