搜索
您的当前位置:首页正文

仿微信 标签页,支持string和自定义Model

来源:二三娱乐

模仿微信标签页逻辑写的小Demo,希望对大家有用,支持了按两次删除键删除 和 自定义Model

000.gif

string

YFTagView *tagView = [[YFTagView alloc] initWithFrame:CGRectMake(10, 100, self.view.frame.size.width - 20, self.view.frame.size.height - 10)];
    
    // 最大高度
    tagView.viewMaxHeight = 400;
    tagView.delegate = self;
    [tagView addTags:@[
                       @"dog",
                       @"cat",
                       @"pig",
                       @"duck",
                       @"horse",
                       @"elephant",
                       @"ant",
                       @"fish",
                       @"bird",
                       @"engle",
                       @"snake",
                       @"mouse",
                       @"squirrel",
                       @"beaver",
                       @"kangaroo",
                       @"monkey",
                       @"panda",
                       @"bear",
                       @"lion",
                       ]];
    tagView.inputTextField.placeholder = @"请输入标签";
    [self.view addSubview:tagView];

自定义Model

 YFTagView *tagView = [[YFTagView alloc] initWithFrame:CGRectMake(10, 100, self.view.frame.size.width - 20, self.view.frame.size.height - 10)];
    self.tagView =tagView;
    
    [tagView setTagModelBlock:^NSString *(id model) {
        
        return ((YFTestModel *)model).tagName;
    }];
    
    [tagView setTagToModel:^id(NSString *tag) {
        YFTestModel *model = [[YFTestModel alloc] init];
        model.tagName = tag;
        return model;
    }];
    
    tagView.delegate = self;
    // self.modelArray 是自定义Model数组
    [tagView addTagModels:self.modelArray];

    tagView.inputTextField.placeholder = @"请输入标签";

    [self.view addSubview:tagView];
Top