开源中国iOS客户端学习——(四)GCDiscreetNotificationView提示

来源:互联网 发布:开发一个软件多少钱 编辑:程序博客网 时间:2024/05/17 23:18


---------------------------------------------------------------------------------------------------------------------------

2015.8.19 更新

考虑到还会有很多童鞋会看到该Blog,在此做一个说明,开源中国iOS开源客户端源码已做重构,请下载最新的源码学习(注:本Blog不一定适用与新的代码学习)。

新repo地址:http://git.oschina.net/oschina/iphone-app。

另外,这篇Blog收集了一些其他社区的客户端源码,源码也正在不断更新中,有的也上架appstore。

访问地址:http://duxinfeng.com/2015/07/14/iOS%E5%BC%80%E6%BA%90App%E6%95%B4%E7%90%86/

---------------------------------------------------------------------------------------------------------------------------

GCDiscreetNotificationView 类库作用是: 在不阻止用户与设备应用程序交互情况下,作为一个通知视图来显示一个当前的状态。

GCDiscreetNotificationView 类库下载地址 https://github.com/gcamp/GCDiscreetNotificationView


在开源中国iOS客户端上,当无法获取网络时,



我们常用的通知可能是一个UIAlertView的警告,提示当前网络未连接,这样就强制用户必须做出选择,被强制的肯定会不爽。这是GCDiscreetNotificationView类库相比较的一个优点;



关于怎样使用GCDiscreetNotificationView第三方类库,在开源中国iOS客户端中,这个开发类库被封装在一个Tool类中(Helper文件夹下),


+ (void)ToastNotification:(NSString *)text andView:(UIView *)view andLoading:(BOOL)isLoading andIsBottom:(BOOL)isBottom{    GCDiscreetNotificationView *notificationView = [[GCDiscreetNotificationView alloc] initWithText:text showActivity:isLoading inPresentationMode:isBottom?GCDiscreetNotificationViewPresentationModeBottom:GCDiscreetNotificationViewPresentationModeTop inView:view];    [notificationView show:YES];    [notificationView hideAnimatedAfter:2.6];}

然后在MessageSystemView.m的reload方法中调用也就一行代码,当然其他类中也可以调用,只需#import "Tool.h"

[Tool  ToastNotification:@"错误网络无连接"   andView:self.view    andLoading:NO    andIsBottom:NO];


GCDiscreetNotificationView类库不仅可以在顶部显示,还可以在底部显示,只需修改andIsBottom:传入的BOOL型参数为YES,这样它就在底部显示了。andLoading接受BOOL型参数用于显示一个加载过程。


我将这个类库放到另一个工程中,仿照开源中国iOS客户端里的方法用Tool类进行封装,做的一个测试

  

底部显示

  


从中我们应该能体会到使用第三方类库好处了吧,我们不需要研究它是如何实现,知道有这个特效,然后只需调用接口就可;



正在学习过程中,错误之处请指正,欢迎交流,共同学习;

欢迎转载分享,请注明出处http://blog.csdn.net/duxinfeng2010



原创粉丝点击