转自:http://www.jianshu.com/p/febef5ce9adc
userInteractionEnabled中的User是指的用户者
当前视图设为view.userInteractionEnabled=NO 时,当前视图不可交互,该视图上面的子视图也不可与用户交互(不可响应即被该视图忽视),响应事件传递到下面的父视图。
当前视图设为view.userInteractionEnabled=YES 时,当前视图可交互,该视图上面的子视图可以用户交互(可以响应即被视图接受),下面的父视图不会接收到响应。
UIImageView 默认的userInteractionEnabled是NO;
UILabel默认 userInteractionEnabled是NO;
UIView的userInteractionEnabled默认是YES。
当视图对象的userInteractionEnabled设置为NO的时候,用户触发的事件,如触摸事件,键盘弹出事件。。等,将会被该视图忽略(其他视图照常响应),并且该视图对象也会从事件响应队列中被移除。当userInteractionEnabled设为YES时,则事件可以正常的传递给该视图对象。
注意::响应者链是能够响应事件的对象组成的链,事件在该链上传递,最终结果事件或被处理或被抛弃。所以一个对象在不在响应者链里是其能否响应事件的首要前提条件!