NSNotification问题

时间:2011-05-06 10:21:11

标签: iphone ios nsnotifications

当我们从登录

收到回复时,我想在整个应用程序中显示警告框

怎么可能?

我们可以使用NSNotification吗?

4 个答案:

答案 0 :(得分:0)

您可以在appdelegate中添加公开方法,并让它显示您的提醒视图。

您可以像这样访问应用代理:

[UIApplication sharedApplication].delegate

您需要将其强制转换为app delegate class以防止出现警告,然后您可以发送消息:

[(MyAppDelegate *)[UIApplication sharedApplication].delegate showMyAlertView];

答案 1 :(得分:0)

- (void)afterSignIn
{
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Title" message:@"Message" delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil];
[alert show];
[alert release];

}

答案 2 :(得分:0)

创建和接收通知很简单:

1)在您的通知中添加一个观察者(例如,YourViewController):

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(someEventHappend) 
                                                 name:@"SomeEvent" object:nil];

您应该在viewDidLoad方法中添加此代码。

2)在someEventHappend

中实施YourViewController方法

3)当您从Signin获得响应时发布通知:

[[NSNotificationCenter defaultCenter] postNotificationName:@"SomeEvent" object:nil];

之后,NSNotificationCenter会在someEventHappend

上调用YourViewController方法

答案 3 :(得分:0)

@anil取一个并在Global.h“BOOL Signin”值中设置它。当它是真的时 然后显示 你的改变观点是这样的

-(void)afterSignIn
{
    if(Signin == YES)
    {

        UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Title" message:@"Meassage" delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil];
        [alert show];
        [alert release];
    }
}

不必使用NSNotificationCenter