登陆框控件

做了一个登陆SDK,觉得SDK中的浮动框可以分享给有需要的同学使用。花了点时间将浮动框代码中业务逻辑代码剥离后独立成一个控件,效果如下。
[图片上传失败...(image-3ff6b6-1511231475012)]
提取的主要需求为:

  • 普通状态下以浮动框显示,不用时可以自动隐藏到屏幕边缘
  • 可以搬动浮动框到屏幕的任何位置
  • 点击浮动框弹出导航栏,再次点击可以弹回。点击导航栏内图标可以触发相应事件
  • 窗口弹出页面支持对话框、全屏两种模式

对外头文件代码如下:

typedef NS_ENUM(NSUInteger, YDAssistiveTouchStatus){
    AssistWindow,
    DialogWindow,
    MainWindow
};


@interface YDAssistiveTouch : UIWindow

@property(nonatomic, strong)NSArray* tools;

@property(nonatomic, assign)YDAssistiveTouchStatus windowStatus;

-(BOOL)open;

-(void)showWindow;

@end

控件的有浮动框(AssistWindow)、弹出框(DialogWindow)、全屏(MainWindow)三种模式,模式间的切换需要调用setWindowStatus接口完成模式间的切换。
浮动框是控件的主体是默认模式,用户可以通过点击控件将开发者设定的工具项展开,然后进入到后续各子页面,如用户中心、论坛等。

欢迎有需要的同学使用与提出修改意见。

你可能感兴趣的:(登陆框控件)