UITextField常用属性和方法
UItextField在Ios开发中是使用频率很高的组件,通常用于外部数据输入,以实现人机交互。
林氏智造 于 2017-04-07 发布 3993 人已阅
在进行ios开发的时候,有时候涉及到搜索功能,实现搜索功能的方法有很多,可以是用自定义的搜索控件,也可以用sdk提供的UISearchController(ios8以后)、UISearchDisplayController(ios8之前)。
@interface ViewController () <UISearchBarDelegate, UISearchResultsUpdating>
UISearchController *searchController = [[UISearchController alloc] initWithSearchResultsController:nil];
searchController.searchController.searchResultsUpdater = self;
searchResultsUpdater是UISearchController中的一个属性,遵循了协议UISearchResultsUpdating。
这个协议允许类接收UISearchBar文本变化的通知。过一会就要使用这个协议。
searchController.searchController.dimsBackgroundDuringPresentation = FALSE;
self.tableView.tableHeaderView = self.searchController.searchBar;
- (void)searchBar:(UISearchBar *)searchBar selectedScopeButtonIndexDidChange:(NSInteger)selectedScope {
[self updateSearchResultsForSearchController:self.searchController];
}
这个代理方法会在用户切换scope bar的时候通知viewController,当它触发时,直接执行[self updateSearchResultsForSearchController:self.searchController]。
- (void)updateSearchResultsForSearchController:(UISearchController *)searchController {
NSString *searchString = searchController.searchBar.text;
//查询
self.listContacts = [self findContactsByName:searchString];
[self.tableView reloadData];
}
updateSearchResultsForSearchController(_:)是UISearchResultsUpdating协议中唯一一个是必须实现的方法。
现在,无论用户怎样修改search bar的文本,UISearchController都会通过这个方法告MasterViewController。
UItextField在Ios开发中是使用频率很高的组件,通常用于外部数据输入,以实现人机交互。
UINavigationController用来管理视图控制器,在多视图控制器中常用。它以栈的形式管理视图控制器,管理视图控制器个数理论上不受限制(实际受内存限制),push和pop方法来弹...
进入了ios开发领域,木有objective-c 开发基础,凭着php开发流程经验学习开发ios各种伤不起,就连个字符串比较都写得那么蛋疼!