以前一直用代码添加手势,最近开始学习Sam Lu’s 100 Days of Swift 项目,顺便熟悉故事板的使用,发现UIButton添加手势方法并不像添加点击事件那么简单

1. 添加手势

  在Xcode库面板对象库底部的搜索框中输入手势名称:(如UILongPressGestureRecognizer直接输入long),选择手势库对象,拖动到故事板ViewControllerScene底部。

添加手势图
添加手势图

2. 添加手势Action

  在Xcode中打开辅助编辑器;选中刚才添加的UILongPressGestureRecognizer,按住Control键的同时,拖动UILongPressGestureRecognizer到代码页面;在弹出的提示框中选择Connection为Action,type为UILongPressGestureRecognizer,填写name,点击Connect;

添加手势Action
添加手势Action

3. 关联手势和控件

  在Xcode中点击要添加手势的控件,打开连接检查器;选中gestureRecognizes右边的小圆圈(会变成+号),拖动,关联左侧的UILongPressGestureRecognizer对象。

关联手势和控件
关联手势和控件

4. 检查是否打开互动手势

  本文以UIButton为例,UIButton默认互动手势是打开的,如果添加手势的对象是UIImageView或者UILable之类的控件,互动手势(User Interaction Enabled)默认是关闭的,需要用户设置打开。

打开互动手势
打开互动手势