2013-09-21 45 views
0

我正在研究搜索欄定製。我搜索了它,並沒有找到我的問題的答案。如何在iPhone應用程序中自定義搜索欄?

Search your Match

我用下面的代碼來更改背景圖片:

searchBar.backgroundColor=[UIColor clearColor]; 
[[UISearchBar appearance] setSearchFieldBackgroundImage:[UIImage imageNamed:@"search-.png"] forState:UIControlStateNormal]; 

[[UISearchBar appearance] setImage:[UIImage imageNamed:@"search-magnifier"] forSearchBarIcon:UISearchBarIconSearch state:UIControlStateNormal]; 

我已經用於獲取搜索欄的子視圖的代碼,但它並沒有幫助。有沒有人有什麼建議?

+1

我注意到你有一個更名圖像...是search-.png應該被命名爲? – user2277872

+0

感謝您的回覆 –

回答

1

我認爲你應該給文件擴展名如user2277872的說法。

+0

好的,謝謝你的回覆 –

0

嗨,我使用下面的代碼做了我的搜索欄問題。它的工作正常。

searchBar.layer.masksToBounds=YES; 

searchBar.layer.cornerRadius=5; 
searchBar.backgroundColor=[UIColor colorWithRed:71/255.f green:71/255.f blue:67/255.f alpha:1]; 
searchBar.backgroundImage=[UIImage imageNamed:@"search-block.png"]; 
UITextField *searchField; 
NSUInteger numViews = [searchBar.subviews count]; 
for(int i = 0; i < numViews; i++) 
{ 
    if([[searchBar.subviews objectAtIndex:i] isKindOfClass:[UITextField class]]) 
    { //conform? 
     searchField = [searchBar.subviews objectAtIndex:i]; 
    } 
} 
if(!(searchField == nil)) 
{ 
    searchField.textColor = [UIColor whiteColor]; 
    [searchField setBackground: [UIImage imageNamed:@"search-block.png"]];//just add here gray image which you display in quetion 
    [searchField setBorderStyle:UITextBorderStyleNone]; 
} 
[[UISearchBar appearance] setImage:[UIImage imageNamed:@"search-magnifier"] forSearchBarIcon:UISearchBarIconSearch state:UIControlStateNormal]; 
相關問題