新聞中心
在IOS混飯吃的同志們都很清楚,搜索框在移動(dòng)開(kāi)發(fā)應(yīng)用中的地位。今天我們就結(jié)合下拉列表框的實(shí)現(xiàn)來(lái)聊聊UISearchBar的使用。本人新入行的菜鳥(niǎo)一個(gè),不足之處請(qǐng)多多指教。直接上代碼。
UISearchBar控件的聲明:(在控制器DownListViewController中)
- @property (nonatomic,retain) UISearchBar* searchBar;
控件的初始化:
- _searchBar
- _searchBar.placeholder
- _searchBar.delegateself
當(dāng)然,做完這些工作之后,我們還要在將控件添加到父視圖之上,也可以把他設(shè)置成UITableView的tableHeaderView屬性值,由于大家需求不一,這里就不再給出代碼。
前面,我們?cè)O(shè)置了控件的代理,當(dāng)然我們必須讓控制器(DownListViewController)的 .h 文件實(shí)現(xiàn) UISearchBarDelegate 協(xié)議,然后我們繼續(xù), 我們要在 .m 文件中實(shí)現(xiàn)協(xié)議方法:
- #pragma mark -
- _searchBar.text.length
- searchBar.showsCancelButtonYES
- for(id cc in [searchBar subviews])
{
if([cc isKindOfClass:[UIButton class]])
{
UIButton *btn = (UIButton *)cc;
[btn setTitle:@"取消" forState:UIControlStateNormal];
}
}- searchBar.text
- searchBar.showsCancelButtonNO
- _searchBar.text
至此,搜索框的實(shí)現(xiàn)就搞定了,怎么樣簡(jiǎn)單吧。下面我們來(lái)講講下拉列表框的實(shí)現(xiàn),先說(shuō)說(shuō)他的實(shí)現(xiàn)原理或者是思路吧。下拉列表框我們用一個(gè)控制器來(lái)實(shí)現(xiàn),我們新建一個(gè)控制器SearchViewController.
- @interface SearchViewController :
在 .m 文件中,我們實(shí)現(xiàn)該控制器
- - (id)initWithStyle:(UITableViewStyle)style
- self
- self.tableView.layer.borderWidth1
- self.tableView.layer.borderColor
然后實(shí)現(xiàn)控制器的數(shù)據(jù)源,
- #pragma mark -
- CellIdentifier
- cell
- cell
- cell
- row
- cell.textLabel.text
這樣列表框的控制器就實(shí)現(xiàn)了。接下來(lái)我們就來(lái)看看怎么讓出現(xiàn)、隱藏。這點(diǎn)我們利用UIView的動(dòng)畫(huà)效果來(lái)實(shí)現(xiàn),我們?cè)贒ownListViewController控制器中 增加一個(gè)方法:
- - (void) setSearchControllerHidden:(BOOL)hidden {
- heighthidden
我們只需調(diào)用該方法就可以了?,F(xiàn)在我們看看DownListViewController的布局方法
- - (void)viewDidLoad
- _searchBar
- _searchBar.placeholder
- _searchBar.delegateself
- _tableview
- _tableview.dataSourceself
- _tableview.tableHeaderView_searchBar
- _searchController
這樣一切都搞定了。
好了,總結(jié)一下:
我們用了兩個(gè)控制器:DownListViewController(搜索框的實(shí)現(xiàn) 和 控制下拉列表框的出現(xiàn)與隱藏)和SearchViewController(下拉列表框的實(shí)現(xiàn))。在DownListViewController中我們聲明并初始化 UISearchBar和SearchViewController(高度開(kāi)始設(shè)置為零),用動(dòng)畫(huà)來(lái)實(shí)現(xiàn)下拉列表框的出現(xiàn)與隱藏。
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線(xiàn),公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性?xún)r(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專(zhuān)為企業(yè)上云打造定制,能夠滿(mǎn)足用戶(hù)豐富、多元化的應(yīng)用場(chǎng)景需求。
當(dāng)前名稱(chēng):UISearchBar的使用以及下拉列表框的實(shí)現(xiàn)-創(chuàng)新互聯(lián)
文章位置:http://fisionsoft.com.cn/article/ehpdc.html