J'ai une zone de texte dans un TableView et quand l'utilisateur sélectionne un commutateur il apparaît (devient visible) et un clavier apparaît, et quand l'utilisateur éteint le commutateur la TextBox disparaît et le clavier cache. Pendant le temps où le clavier apparaît et disparaît, je veux déplacer la table légèrement vers le haut et ensuite revenir à la position d'origine. Voici le codeContentInsets ne fonctionne pas pour UITableView
-(IBAction)actionSwitch:(id)sender
{
isSearchTerm = [switchSearchTerm isOn];
[self.tableView reloadData];
if(isSearchTerm == YES)
{
[txtSearchTerm becomeFirstResponder];
floatBottom = self.tableView.contentInset.bottom;
self.tableView.contentInset=UIEdgeInsetsMake(0,0,200,0);
[self.tableView scrollToRowAtIndexPath:[self.tableView indexPathForSelectedRow] atScrollPosition:UITableViewScrollPositionTop animated:YES];
}
else
{
[txtSearchTerm resignFirstResponder];
self.tableView.contentInset=UIEdgeInsetsMake(0,0,floatBottom,0);
[self.tableView scrollToRowAtIndexPath:[self.tableView indexPathForSelectedRow] atScrollPosition:UITableViewScrollPositionBottom animated:YES];
}
}
La partie else ne ramène pas la tableview à sa position d'origine, merci de nous aider.
Je pense que ce que votre code fait est effectivement la même chose et, en fin de compte, fonctionne de la même façon, comme le mien, une fois que la vue de table déplacée ne descend pas. –
a résolu cela en désactivant l'extension sous la propriété de barre supérieure dans les propriétés ViewControllers. Merci quand même –