[iOS] TSMessages v0.9.3 に現在アクティブなViewを非表示にする dismissActiveNotification メソッドが追加された

Tadashi Shigeoka ·  Wed, July 10, 2013

iOS アプリ開発で、通知ビューをカンタンに実装できるライブラリ「TSMessages」の version 0.9.3 に、現在表示中のViewを非表示にする dismissActiveNotification メソッドが追加されていました。

toursprung/TSMessages - Changes

/** Fades out the currently displayed notification. If another notification is in the queue,
 the next one will be displayed automatically 
 @return YES if the currently displayed notification could be hidden. NO if no notification 
 was currently displayed.
 */
+ (BOOL)dismissActiveNotification
{
    if ([[TSMessage sharedMessage].messages count] == 0) return NO;
    
    dispatch_async(dispatch_get_main_queue(), ^
    {
        TSMessageView *currentMessage = [[TSMessage sharedMessage].messages objectAtIndex:0];
        if (currentMessage.messageIsFullyDisplayed)
        {
            [[TSMessage sharedMessage] fadeOutNotification:currentMessage];
        }
    });
    return YES;
}

今まで、通知ビューを非表示にするメソッドを外部から呼び出せなかったので、TSMessages を fork して外から呼べるようにして対応していました。

dismissActiveNotification メソッドが追加されたので、これを使うようにします。