我有一个常规的TableViewController,并希望在上面添加一个将填充TableView数据的UITextField。我如何以编程方式放置在单元格上方?
由于
答案 0 :(得分:0)
您可以将UITextField放在UITableViewController的标题中。
使用UITableViewController Delegate方法设置标题的属性。
- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section;
- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section;
或者,您可以使用UISearchBar。
UISearchBar *searchBar = [[UISearchBar alloc] initWithFrame:CGRectMake(0, 0, tableView.frame.size.width, 0)];
searchBar.delegate = self;
[searchBar sizeToFit];
tableView.tableHeaderView = searchBar;
然后,在UISearchBar委托方法中。
#pragma mark - UISearchBar Delegate Methods
- (void)searchBarSearchButtonClicked:(UISearchBar *)searchBar
{
// Remove the keyboard
[searchBar endEditing:YES];
// This method filters the data based on the search text.
[self filterDataUsingSearchText:searchBar.text];
}
- (void)searchBarCancelButtonClicked:(UISearchBar *)searchBar
{
// Remove the keyboard
[searchBar endEditing:YES];
// Clear the text on cancel
searchBar.text = @"";
}
- (void)searchBar:(UISearchBar *)searchBar textDidChange:(NSString *)searchText
{
// This method filters the data based on the search text.
[self filterDataUsingSearchText:searchText];
}
#pragma mark -
文档: