FDStatusBarNotifierView 是一个视图,您可以使用状态栏所在区域显示通知和信息。
它像 UIAlertView
一样易于使用,以下是一个例子
// from a view controller
FDStatusBarNotifierView *notifierView = [[FDStatusBarNotifierView alloc] initWithMessage:@"Hello!"];
notifierView.timeOnScreen = 3.0; // by default it's 2 seconds
[notifierView showInWindow:self.view.window];
// or from a view controller with a navigation bar
[notifierView showAboveNavigationController:self.navigationController];
当您调用 showInWindow:
时,状态栏消失,并且通知视图通过平滑动画占据其位置。
安装此组件的最简单方法是使用 CocoaPods。
将以下行添加到您的 podfile
pod 'FDStatusBarNotifierView'
然后运行 pod install
命令,并在您计划使用通知视图的位置导入 FDStatusBarNotifierView.h
。
您也可以手动安装。只需将 FDStatusBarNotifierView.h
和 FDStatusBarNotifierView.m
拖放到您的项目中,并在您想使用此组件的位置导入 .h
文件。
在某些情况下(例如,通知用户网络活动),您可能希望手动隐藏组件。
为此,只需将 manuallyHide
属性设置为 YES
,然后调用 hide
方法来隐藏。
notifierView.manuallyHide = YES;
// do some stuff
[notifierView hide];
如果您将 shouldHideOnTap
属性设置为 YES
,那么当用户触摸消息时,它将被隐藏。
如果您想要显示的消息不适合状态栏,它将通过动画水平滚动以显示完整文本。
我还创建了一些方便的、自解释的代理方法,如果您需要的话。
- (void)willPresentNotifierView:(FDStatusBarNotifierView *)notifierView; // before animation and showing view
- (void)didPresentNotifierView:(FDStatusBarNotifierView *)notifierView; // after animation
- (void)willHideNotifierView:(FDStatusBarNotifierView *)notifierView; // before hiding animation
- (void)didHideNotifierView:(FDStatusBarNotifierView *)notifierView; // after animation
- (void)notifierViewTapped:(FDStatusBarNotifierView *)notifierView; // user tap the status bar message
请随意通过发送拉取请求或创建新问题来帮助我们。
showInWindow:
时出现意外行为。请参阅 LICENSE 文件(MIT 许可证)。