因?yàn)榻缑婷阑男枰械目丶earchBar控件太丑了,又懶的研究SearchBar控件的新樣式,所以決定重寫個(gè)搜索功能的控件。
創(chuàng)建個(gè)UITextField的類對(duì)象。
[cpp] view plain copy searchField= [[[UITextField alloc]initWithFrame:CGRectMake(0,5,320,36)] autorelease]; searchField.textColor= [UIColorcolor WithRed:0.0/255.0 green:103.0/255.0 blue:155.0/255.0 alpha:1.0]; searchField.font= [UIFont systemFontOfSize:16] ; searchField.backgroundColor= [UIColor blueColor] ; searchField.contentVerticalAlignment=UIControlContentVerticalAlignmentCenter; [searchField addTarget:self action:@selector(textFieldDidChange:) forControlEvents:UIControlEventEditingChanged]; // textField的文本發(fā)生變化時(shí)相應(yīng)事件 設(shè)置ReturnKeyType為UIRetuirKeySearch : [cpp] view plain copy [searchField setReturnKeyType:UIReturnKeySearch];
設(shè)置UITextField的delegate為self:
[cpp] view plain copy searchField.delegate=self; 之后編寫響應(yīng)點(diǎn)擊搜索按鈕的響應(yīng)事件的函數(shù): [cpp] view plain copy - (BOOL)textFieldShouldReturn:(UITextField*)theTextField { [theTextField resignFirstResponder]; NSLog(@”do something what you want”); returnYES; } textField的文本內(nèi)容發(fā)生變化時(shí),處理事件函數(shù) [cpp] view plain copy - (void) textFieldDidChange:(UITextField*) TextField{ NSLog(@”textFieldDidChange textFieldDidChange”); if(![TextField.textisEqualToString:@”“]) { delButton.hidden=NO; // 仿制searchbar后面的小叉叉 } else{ delButton.hidden=YES; } }
哈,當(dāng)然本人還是參考了下面的一位高人的idea
http://forums.macrumors.com/archive/index.php/t-523664.html 備注:此文章之前發(fā)布在baidu上,但是氣不過百度的排版樣式,轉(zhuǎn)戰(zhàn)csdn。
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注