• ios notification


    1,- (void)viewWillAppear:(BOOL)animated 中注册notification

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

    2,在接收notification地方实现方法体

    -(void)actionSheetSelect:(NSNotification *)notification{
        
        NSString* obj = (NSString*)[notification object];
        if ([obj isEqualToString:@"MobilePhone"]) {
            
            //load the view though psw
            
            GetPswThroughPhoneNumberViewController *pushView = [[GetPswThroughPhoneNumberViewController alloc] init];
            [self.navigationController pushViewController:pushView animated:YES];
            [pushView release];
        }
        else if([obj isEqualToString:@"Email"]){
            //load the view though email
            GetPswThroughEmailViewController *pushView = [[GetPswThroughEmailViewController alloc] init];
            [self.navigationController pushViewController:pushView animated:YES];
            [pushView release];
        }
        else{
            NSLog(@"erase");
        }
    }

    3,调用的地方发送请求

    - (void)buttonClicked:(id)sender {
        NSUInteger buttonIndex = ((UIView *)sender).tag - 100;
        
        [self dismissWithClickedButtonIndex:buttonIndex animated:YES];
        
        switch (buttonIndex) {
            case CMActionSheetButtonMobilePhoneIndex:
            {
                [[NSNotificationCenter defaultCenter] postNotificationName:@"actionSheetSelect" object:@"MobilePhone"];
                break;
            }
            case CMActionSheetButtonEmailIndex:
            {
                //load the view though email
                [[NSNotificationCenter defaultCenter] postNotificationName:@"actionSheetSelect" object:@"Email"];
                break;
            }
            case CMActionSheetButtonCancelIndex:
            {
                //cancel
                [[NSNotificationCenter defaultCenter] postNotificationName:@"actionSheetSelect" object:@"Cancel"];
                break;
            }
            default:
                break;
        }
        
    }

    4,在viewDidDisappear中注销掉notification

    - (void)viewDidDisappear:(BOOL)animated{
        
        [[NSNotificationCenter defaultCenter] removeObserver:self];
        
    }

  • 相关阅读:
    理解vertical-align
    理解css行高(line-height)
    react 生命周期函数
    react Diff 算法
    React中的虚拟DOM
    无限重启:windows更新之后,在输入密码页面无限重启进入不了系统
    [转]github 上传project代码
    【转】HTTP响应状态码参考簿
    TweenMax—ScrambleText插件 实现类似电脑破译密码的特效
    既然CPU一次只能执行一个线程,那多线程存在的意义是什么?
  • 原文地址:https://www.cnblogs.com/lisa090818/p/3311913.html
Copyright © 2020-2023  润新知