serachBar這個問題真的是讓我又愛又恨。
真的想對封鎖的局域網想吐槽。真的是浪費了我一下午的時間。浪費時間是不好的
現在用到了serachBar。對於serachBar這個console自帶的按鈕,是不是有很多人要改變它的原始狀態,顏色呢。
今天我就做了小白鼠。話不多說。現在由於版本問題,seracBar的取消按鈕獲取改變了。由於我用的是7以上的版本,在網上搜到的全是6以下獲取到的console按鈕的方法,讓我想大哭呀。
我們可以在 程序將要加載的方法中 判斷下我們所使用的版本信息,來獲取console按鈕。進行設置顏色,左側按鈕呢。
self.getIOSVersion=[[[UIDevice currentDevice] systemVersion] intValue];//這裏是得到版本信息
//版本不同得到,獲取到的取消按鈕不同
if ( self.getIOSVersion < 7) {
self.subviews = self.serachBarBtn.subviews;//這裏是7下的獲取
} else {
self.subviews = [(self.serachBarBtn.subviews[0]) subviews];//這裏7上的獲取
}
for (id view in self.subviews) {
if ([view isKindOfClass:[UIButton class]]) {
UIButton* cancelbutton = (UIButton* )view;
[cancelbutton setTitle:@"取消" forState:UIControlStateNormal];//在這個區域就可以修改了你想修改的內容呢。
break;
}
}
//這裏是修改serachBar的外框顏色
[self.serachBarBtn setSearchFieldBackgroundImage:[UIImage imageNamed:@"classRoom_serachBgd.png"] forState:UIControlStateNormal];
這裏是修改serachBar的左側按鈕的圖片
[self.serachBarBtn setImage:[UIImage imageNamed:@"classRoom_serbtnbgd.png"] forSearchBarIcon:UISearchBarIconSearch state:UIControlStateNormal];