iOS通用库----下拉选择框封装

一、前言

本章节,主要是讲述下拉选择框的封装,因为在开发中用得很多,也很常见,所以作了一个简洁的封装。
长话短说,上图,上代码,主要侧重于逻辑和封装的细节

二、框架,核心类介绍

图1是下拉选择框大体框架

iOS通用库----下拉选择框封装_第1张图片
1

图2是下拉选择框的核心类DropDwonList

iOS通用库----下拉选择框封装_第2张图片
2

三、下拉选择框封装类DropDownList的调用实现

iOS通用库----下拉选择框封装_第3张图片
3

首先,我们看看核心类DropDownList的头文件的内容,如上图3。
我们知道只要传入frame,和下拉数据,还有加载在哪个视图上面,即可完成接入下拉框。所以,在UIViewController控制中,我们通过以下简单的几句代码,就可以集成我们想要的下拉选择框效果。

/**
 弹出选择框

 @param sender 按钮
 */
- (IBAction)dropSelectedList:(id)sender
{
    CGFloat drop_X = self.button.frame.origin.x;
    CGFloat drop_Y = CGRectGetMaxY(self.button.frame);
    CGFloat drop_W = self.button.frame.size.width;
    CGFloat drop_H = self.dataArray.count * 40 + 10;
    NSArray *dataArray = [[NSArray alloc] initWithObjects:@"听见下雨的声音1",@"听见下雨的声音1",@"听见下雨的声音2",@"听见下雨的声音1",@"听见下雨的声音2",@"听见下雨的声音3",@"听见下雨的声音4", nil];
    DropDownList *dropList = [[DropDownList alloc] initWithFrame:CGRectMake(drop_X, drop_Y, drop_W, drop_H) dataArray:dataArray onTheView:self.view] ;
    
    dropList.myBlock = ^(NSInteger row,NSString *title)
    {
        self.listenLab.text = title;
    };
    
    [self.view addSubview:dropList];

}
iOS通用库----下拉选择框封装_第4张图片
4

上图4是下拉选择框的效果,而背景图片是由自己来控制的,如果想详细了解作个参考,详细的实现代码可以下载。

四、总结

善于总结归纳开发遇到的问题,总结归纳常用的功能,对简单的知识点作梳理,对难的知识点作从简单到深入的了解,慢慢积累。开发是一个过程,与生活一样,需要点点滴滴的循序渐进。

五、相关文章链接

iOS通用库----时间日期相关功能封装

六、源码地址

https://github.com/476455183/CommonUserFramework

你可能感兴趣的:(iOS通用库----下拉选择框封装)