1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/shede333-KeyboardShowHideHandler

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
В этом репозитории не указан файл с открытой лицензией (LICENSE). При использовании обратитесь к конкретному описанию проекта и его зависимостям в коде.
Клонировать/Скачать
KeyboardShowHideHandler.h 2.1 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
shaowei Отправлено 07.05.2015 15:28 3b23be5
//
// KeyboardHandleViewController.h
// VoiceMemo
//
// Created by shaowei on 6/24/14.
// Copyright (c) 2014 shede333. All rights reserved.
//
#import <Foundation/Foundation.h>
#import <UIKit/UIKit.h>
@class KeyboardHandleWidget;
/**
* 键盘显示/隐藏 处理;
* addWidget 接口尽量在ViewWillAppear(viewDidAppear)里面调用,因为这时view的frame才最终确定,
* 这样就能防止给出错误的frameOfKbHide;
* 同时注意,在ViewWillAppear 防止多余的 addWidget接口调用;
*/
@interface KeyboardShowHideHandler : NSObject
/**
* 将许要根据键盘变化控件添加到数组中,键盘变化时,会遍历数组,批量处理
* 该方法要在键盘出现以前(或者 becomeFirstResponder)调用,
*
* @param widgetModel 控件模型,包含一些必要的数据
*
* @return 添加是否成功
*/
- (BOOL)addWidget:(KeyboardHandleWidget *)widgetModel;
/**
* 获取当前能被处理的控件widget对象
*
* @return widget对象 数组
*/
- (NSArray *)getAllWidget;
/**
* 开始接受键盘变化通知,在新建该对象的时候,已经调用该接口来接受通知。
*/
- (void)startKeyboardNotify;
/**
* 停止接受键盘变化通知
*/
- (void)stopKeyboardNotify;
/**
* 清空所有数据,但不会干扰通知设置。
*/
- (void)resetData;
@end
/**
* 键盘变化时,需要处理ideo对象模型
*/
@interface KeyboardHandleWidget : NSObject
/**
* 键盘变化时,需要跟随变化的UIView;
*/
@property (nonatomic, weak) UIView *widgetView;
/**
* widgetView所处的UIViewController的view,用于计算widget 在键盘显示/隐藏,来计算widget高度
*/
@property (nonatomic, weak) UIView *widgetRootView;
/**
* 键盘处于隐藏状态时,widgetView的frame;
* 这个属性的设置可能会有问题,因为viewDidLoad之后,view的大小可能变化;
* ViewWillAppear(viewDidAppear)里,view 的frame菜最终确定
*/
@property (nonatomic, assign) CGRect frameOfKbHide;
/**
* //键盘显现时,widgetView的底沿与键盘上沿的空间高度
*/
@property (nonatomic, assign) CGFloat intervalOfWidgetToKbWhenKbShow;
@end

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/shede333-KeyboardShowHideHandler.git
git@api.gitlife.ru:oschina-mirror/shede333-KeyboardShowHideHandler.git
oschina-mirror
shede333-KeyboardShowHideHandler
shede333-KeyboardShowHideHandler
master