From 7b02207537d35bfa1714bf8beafc921f717d100a Mon Sep 17 00:00:00 2001 From: 单军华 Date: Wed, 11 Jul 2018 10:47:42 +0800 Subject: [PATCH] 首次上传 --- screendisplay/Pods/YYText/YYText/Component/YYTextKeyboardManager.h | 98 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 98 insertions(+), 0 deletions(-) diff --git a/screendisplay/Pods/YYText/YYText/Component/YYTextKeyboardManager.h b/screendisplay/Pods/YYText/YYText/Component/YYTextKeyboardManager.h new file mode 100755 index 0000000..5f28a55 --- /dev/null +++ b/screendisplay/Pods/YYText/YYText/Component/YYTextKeyboardManager.h @@ -0,0 +1,98 @@ +// +// YYTextKeyboardManager.h +// YYText <https://github.com/ibireme/YYText> +// +// Created by ibireme on 15/6/3. +// Copyright (c) 2015 ibireme. +// +// This source code is licensed under the MIT-style license found in the +// LICENSE file in the root directory of this source tree. +// + +#import <UIKit/UIKit.h> + +NS_ASSUME_NONNULL_BEGIN + +/** + System keyboard transition information. + Use -[YYTextKeyboardManager convertRect:toView:] to convert frame to specified view. + */ +typedef struct { + BOOL fromVisible; ///< Keyboard visible before transition. + BOOL toVisible; ///< Keyboard visible after transition. + CGRect fromFrame; ///< Keyboard frame before transition. + CGRect toFrame; ///< Keyboard frame after transition. + NSTimeInterval animationDuration; ///< Keyboard transition animation duration. + UIViewAnimationCurve animationCurve; ///< Keyboard transition animation curve. + UIViewAnimationOptions animationOption; ///< Keybaord transition animation option. +} YYTextKeyboardTransition; + + +/** + The YYTextKeyboardObserver protocol defines the method you can use + to receive system keyboard change information. + */ +@protocol YYTextKeyboardObserver <NSObject> +@optional +- (void)keyboardChangedWithTransition:(YYTextKeyboardTransition)transition; +@end + + +/** + A YYTextKeyboardManager object lets you get the system keyboard information, + and track the keyboard visible/frame/transition. + + @discussion You should access this class in main thread. + Compatible: iPhone/iPad with iOS6/7/8/9. + */ +@interface YYTextKeyboardManager : NSObject + +- (instancetype)init UNAVAILABLE_ATTRIBUTE; ++ (instancetype)new UNAVAILABLE_ATTRIBUTE; + +/// Get the default manager (returns nil in App Extension). ++ (nullable instancetype)defaultManager; + +/// Get the keyboard window. nil if there's no keyboard window. +@property (nullable, nonatomic, readonly) UIWindow *keyboardWindow; + +/// Get the keyboard view. nil if there's no keyboard view. +@property (nullable, nonatomic, readonly) UIView *keyboardView; + +/// Whether the keyboard is visible. +@property (nonatomic, readonly, getter=isKeyboardVisible) BOOL keyboardVisible; + +/// Get the keyboard frame. CGRectNull if there's no keyboard view. +/// Use convertRect:toView: to convert frame to specified view. +@property (nonatomic, readonly) CGRect keyboardFrame; + + +/** + Add an observer to manager to get keyboard change information. + This method makes a weak reference to the observer. + + @param observer An observer. + This method will do nothing if the observer is nil, or already added. + */ +- (void)addObserver:(id<YYTextKeyboardObserver>)observer; + +/** + Remove an observer from manager. + + @param observer An observer. + This method will do nothing if the observer is nil, or not in manager. + */ +- (void)removeObserver:(id<YYTextKeyboardObserver>)observer; + +/** + Convert rect to specified view or window. + + @param rect The frame rect. + @param view A specified view or window (pass nil to convert for main window). + @return The converted rect in specifeid view. + */ +- (CGRect)convertRect:(CGRect)rect toView:(nullable UIView *)view; + +@end + +NS_ASSUME_NONNULL_END -- Gitblit v1.8.0