一、前言
本章節,主要是講述下拉選擇框的封裝
,因爲在開發中用得很多,也很常見,所以作了一個簡潔的封裝。
長話短說,上圖,上代碼,主要側重於邏輯和封裝的細節
二、框架,核心類介紹
圖1是下拉選擇框大體框架
圖2是下拉選擇框的核心類DropDwonList
三、下拉選擇框封裝類DropDownList的調用實現
首先,我們看看核心類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];
}
上圖4是下拉選擇框的效果,而背景圖片是由自己來控制的,如果想詳細瞭解作個參考,詳細的實現代碼可以下載。
四、總結
善於總結歸納開發遇到的問題,總結歸納常用的功能,對簡單的知識點作梳理,對難的知識點作從簡單到深入的瞭解,慢慢積累。開發是一個過程,與生活一樣,需要點點滴滴的循序漸進。