QMUIKeyboardUserInfo

@interface QMUIKeyboardUserInfo : NSObject

/**
 *  所在的KeyboardManager
 */
@property(nonatomic, weak, readonly) QMUIKeyboardManager *keyboardManager;

/**
 *  当前键盘的notification
 */
@property(nonatomic, strong, readonly) NSNotification *notification;

/**
 *  notification自带的userInfo
 */
@property(nonatomic, strong, readonly) NSDictionary *originUserInfo;

/**
 *  触发键盘事件的UIResponder,注意这里的 `targetResponder` 不一定是通过 `addTargetResponder:` 添加的 UIResponder,而是当前触发键盘事件的 UIResponder。
 */
@property(nonatomic, weak, readonly) UIResponder *targetResponder;

/**
 *  获取键盘实际宽度
 */
@property(nonatomic, assign, readonly) CGFloat width;

/**
 *  获取键盘的实际高度
 */
@property(nonatomic, assign, readonly) CGFloat height;

/**
 *  获取当前键盘在view上的可见高度,也就是键盘和view重叠的高度。如果view=nil,则直接返回键盘的实际高度。
 */
- (CGFloat)heightInView:(UIView *)view;

/**
 *  获取键盘beginFrame
 */
@property(nonatomic, assign, readonly) CGRect beginFrame;

/**
 *  获取键盘endFrame
 */
@property(nonatomic, assign, readonly) CGRect endFrame;

/**
 *  获取键盘出现动画的duration,对于第三方键盘,这个值有可能为0
 */
@property(nonatomic, assign, readonly) NSTimeInterval animationDuration;

/**
 *  获取键盘动画的Curve参数
 */
@property(nonatomic, assign, readonly) UIViewAnimationCurve animationCurve;

/**
 *  获取键盘动画的Options参数
 */
@property(nonatomic, assign, readonly) UIViewAnimationOptions animationOptions;

@end

Undocumented

  • 所在的KeyboardManager

    Declaration

    Objective-C

    @property (nonatomic, weak, readonly) QMUIKeyboardManager *keyboardManager;

    Swift

    weak var keyboardManager: QMUIKeyboardManager! { get }
  • 当前键盘的notification

    Declaration

    Objective-C

    @property (nonatomic, strong, readonly) NSNotification *notification;

    Swift

    var notification: Notification! { get }
  • notification自带的userInfo

    Declaration

    Objective-C

    @property (nonatomic, strong, readonly) NSDictionary *originUserInfo;

    Swift

    var originUserInfo: [AnyHashable : Any]! { get }
  • 触发键盘事件的UIResponder,注意这里的 targetResponder 不一定是通过 addTargetResponder: 添加的 UIResponder,而是当前触发键盘事件的 UIResponder。

    Declaration

    Objective-C

    @property (nonatomic, weak, readonly) UIResponder *targetResponder;

    Swift

    weak var targetResponder: UIResponder! { get }
  • 获取键盘实际宽度

    Declaration

    Objective-C

    @property (nonatomic, readonly) CGFloat width;

    Swift

    var width: CGFloat { get }
  • 获取键盘的实际高度

    Declaration

    Objective-C

    @property (nonatomic, readonly) CGFloat height;

    Swift

    var height: CGFloat { get }
  • 获取当前键盘在view上的可见高度,也就是键盘和view重叠的高度。如果view=nil,则直接返回键盘的实际高度。

    Declaration

    Objective-C

    - (CGFloat)heightInView:(UIView *)view;

    Swift

    func height(in view: UIView!) -> CGFloat
  • 获取键盘beginFrame

    Declaration

    Objective-C

    @property (nonatomic, readonly) CGRect beginFrame;

    Swift

    var beginFrame: CGRect { get }
  • 获取键盘endFrame

    Declaration

    Objective-C

    @property (nonatomic, readonly) CGRect endFrame;

    Swift

    var endFrame: CGRect { get }
  • 获取键盘出现动画的duration,对于第三方键盘,这个值有可能为0

    Declaration

    Objective-C

    @property (nonatomic, readonly) NSTimeInterval animationDuration;

    Swift

    var animationDuration: TimeInterval { get }
  • 获取键盘动画的Curve参数

    Declaration

    Objective-C

    @property (nonatomic, readonly) UIViewAnimationCurve animationCurve;

    Swift

    var animationCurve: UIView.AnimationCurve { get }
  • 获取键盘动画的Options参数

    Declaration

    Objective-C

    @property (nonatomic, readonly) UIViewAnimationOptions animationOptions;

    Swift

    var animationOptions: UIView.AnimationOptions { get }