1
検索用コントローラに検索用コントローラを使用しています。しかし、それはいくつかの問題を与えている。ビューが負荷の検索バーのフレームがビューから外れていますが、何かを検索しようとしているときはいつでも、必要な適切なフレームが表示されます。自分のコードで問題を認識できません。私は問題をより明確にするイメージを添付しました。ディスプレイコントローラのフレームを検索
プラグママークUISearchDisplayController委任方法
- (void)handleSearchForTerm:(NSString *)searchTerm
{
searchbar.frame = CGRectMake(391, 28, 586, 44);
[self setSavedSearchTerm:searchTerm];
if ([self searchResults] == nil)
{
NSMutableArray *array = [[NSMutableArray alloc] init];
[self setSearchResults:array];
}
[[self searchResults] removeAllObjects];
if ([[self savedSearchTerm] length] != 0)
{
int i = 0;
for (NSString *currentString in [[self contentsList]valueForKey:@"name"])
{
if ([currentString rangeOfString:searchTerm options:NSCaseInsensitiveSearch].location != NSNotFound)
{
[[self searchResults] addObject:currentString];
[[self searchResults] addObject:[[[self contentsList]objectAtIndex:i] objectForKey:@"id"]];
[[self searchResults] addObject:[[[self contentsList]objectAtIndex:i] objectForKey:@"category"]];
NSString *searchcategory = [[[self contentsList]objectAtIndex:i] objectForKey:@"category"];
[[self searchResults] addObject:[[[self contentsList]objectAtIndex:i] objectForKey:@"flavour"]];
[[self searchResults] addObject:[[[self contentsList]objectAtIndex:i] objectForKey:@"price"]];
[[self searchResults] addObject:[[[self contentsList]objectAtIndex:i] objectForKey:@"image"]];
}
i++;
}
}
}
- (BOOL)searchDisplayController:(UISearchDisplayController *)controller
shouldReloadTableForSearchString:(NSString *)searchString
{
searchbar.frame = CGRectMake(391, 28, 586, 44);
[self handleSearchForTerm:searchString];
return YES;
}
- (void)searchDisplayControllerWillEndSearch:(UISearchDisplayController *)controller
{
searchbar.frame = CGRectMake(391, 28, 586, 44);
[self setSearchResults:nil];
[self setSavedSearchTerm:nil];
[[self itemstable_ipad]reloadData];
}
-(void)searchmethod
{
searchbar.frame = CGRectMake(391, 28, 586, 44);
[self setContentsList:categoryarray_ipad];
if ([self savedSearchTerm])
{
[[[self searchDisplayController] searchBar] setText:[self savedSearchTerm]];
}
}
0:ここ
は、検索のためのコードであります
誰かが検索バーフレームを設定する方法を知っていれば、私にいくつかの解決策を教えてください。
ありがとうございます。