码迷,mamicode.com
首页 > 其他好文 > 详细

block 做参数

时间:2016-05-13 09:18:38      阅读:164      评论:0      收藏:0      [点我收藏+]

标签:

三部分

1,定义函数

 

/* 传出类定义block

 */

//定义block

typedef void (^ItemClickBlock)(NSInteger selectedIndex);

//block 做函数参数

+ (instancetype)navigationViewWithItems:( NSArray <NSString *> * )items itemClick:(ItemClickBlock)itemClick;

 

 

2,实现

#pragma mark - init block 做参数,实现方法, --

+ (instancetype)navigationViewWithItems:(NSArray<NSString *> *)items itemClick:(ItemClickBlock)itemClickBlock{

    WSNavigationView *nav = [[WSNavigationView alloc] init];

    nav.btns = [NSMutableArray arrayWithCapacity:items.count];

    //

    NSLog(@"  navigationViewWithItems 初始化 ----------- ");

    nav.itemClickBlock = itemClickBlock;

    nav.items = items;

    ////禁用滚动到最顶部的属性

    nav.scrollsToTop = NO;

     NSLog(@"-=====--------==---==== ");

    return nav;

}

 

 

3,调用

 //添加导航view

        typeof(self) __weak weakObj= self;

        //调用 block做参数,方法。  - 传入   意义在于:当点击时,传入信息到此。

        WSNavigationView *view = [WSNavigationView navigationViewWithItems:nil itemClick:^(NSInteger selectedIndex) {

            //实现

            NSLog(@"2- WSContainerController init   实现  传入 点击 %lu ",  selectedIndex);

            //传入 弱引用

          //  [weakObj setSelectedIndex:selectedIndex];

            [self setSelectedIndex:selectedIndex];

        }];

        

//////////////////////////数据库使用

 

 

1,实现

-(void)LoadAllCityWithCompletion:(XNDLoadAreaModelCompletion)completion;

 

 

2,实现

-(void)LoadAllCityWithPid:(int)pid Completion:(XNDLoadAreaModelCompletion)completion{

    [[[DBManager alloc]init] loadCityArrayAllWithPid:pid Completion:^(NSArray *messages, NSError *error) {

        self.modelCityArry=[[NSMutableArray alloc]initWithArray: messages ];

        completion(nil,nil);

    }];

}

 

3.调用

  //调用 block做参数的方法 传入

                            [[XNDAreaModule instance] LoadAllCityWithPid:pid Completion:^(NSArray *messages, NSError *error) {

                                if (isPosted==NO) {

                                    [[NSNotificationCenter defaultCenter] postNotificationName:KNotifictionChangeArea object:@"1"];

                                }

                            

                            }];

 

block 做参数

标签:

原文地址:http://www.cnblogs.com/iOS-mt/p/5485668.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!