1 介绍
仿微信,具备浮窗功能的微信浏览器
项目分为三个工程
- 1 WXFloatSDK:模拟微信的浮窗功能
- 2 WXStyleWebContainerView:模拟微信的 webeview 页面(进度条,底部导航栏,背景地址)
上述两个库是解耦合的,可以组装成具有浮窗功能的 H5 页面,也可以单独使用,具体可以参考 Demo 中的 WXStyleWebViewController 如何使用这两个库。如果直接想使用 Demo 中的 WXStyleWebViewController,可以使用以下 pod 命令
- 3 WXFloatWebDemo:Demo 中的 WXStyleWebViewController,依赖于前两个工程。如果直接想使用,可以将其拖入工程中使用或对其进行修改
2 WXFloatSDK (浮窗)使用
2.1 调用
#import <UIViewController+WXFloat.h>
UIViewController *viewController = [[UIViewController alloc] init];
UINavigationController *navi = [[UINavigationController alloc]
initWithRootViewController: viewController];
[viewController wf_presentSelfAnimated:YES
navi:navi
completion:^{
} presentingViewController:self];
//
其他方法可以参考UIViewController+WXFloat
2.2 自定义 view
浮窗图标、弹出页面时页面右下角的 circleView 以及移动浮窗图标出现的垃圾桶 view,支持自定义。
- 浮窗图标:可以继承 WXFloatIcon 或实现 WXFloatIconProtocol 协议
- 弹出页面右下角的 view:继承 WXFloatMinimizeCircleView 或实现 WXFloatMinimizeCircleViewProtocol 协议
- 移动浮窗出现的垃圾桶:继承 WXFloatRubbishCircleView 或实现 WXFloatRubbishCircleViewProtocol 协议
在第一步调用前,需将自定义 view 的 class 分配给 manager 的属性
.....
[WXFloatManager sharedInstance].floatIconClass = [NewFloatIcon class];
[WXFloatManager sharedInstance].minimizeViewClass = [NewMinimizeView class];
[WXFloatManager sharedInstance].rubbishClass = [NewRubisshView class];
以上调用需在以下函数之前调用
[UIViewController wf_presentSelfAnimated: navi: completion: presentingViewController]
...
3 WXStylWebContanierView 使用(微信样式的 webview)
3.1 调用
- (void)viewDidLoad
{
....
WXStyleContainerView *containerView = [[WXStyleContainerView alloc] initWithUrlRequest:request];
containerView.frame = CGRectMake(0,navigationBarHeight,screenWidth,screenHeight - navigationBarHeight);
[self.view addSubView containerView];
}
4 WXFloatWebDemo
可以使用WXStyleWebViewController,可以将整个文件夹拖入工程使用
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
WebModel *model = self.webModelArray[indexPath.row];
[WXStyleWebViewController presentSelfWithUrlStr:model.urlStr presentingViewController:self];
[tableView deselectRowAtIndexPath:indexPath animated:YES];
}
5 安装
5.1 CocoaPod安装方式
- 1 WXFloatSDK(浮窗)
pod WXFloatWeb/WXFloatSDK
- 2 WXStyleWebContainerView (微信WebView)
pod WXFloatWeb/WXStyleWebContainerView
- 3 WXFloatWebDemo(Demo中的WXStyleWebViewController)
pod WXFloatWeb/WXStyleWebViewController
//依赖到上面两个库,会同时引入,相当于pod 1+2+3
- 4 WXFloatWeb
pod WXFloatWeb
// 相当于pod 1+2
5.2 可以直接拖入工程使用
- 直接拖入文件的方式,注意将资源文件拖入
- 如果是拖入子工程的方式,注意资源文件 bundle需要拷贝到主target中
6 许可证明
7 作者
- 微信号 liuyumxuan2
- 电话 13660271169