Dans mon application iOS, je crée un UIAlert et ajouter un UITextView à dynamiquement:se concentrer Programmatically sur UITextView qui est créé comme un AccessoryView
UIAlertView *tweetAlert = [[UIAlertView alloc] initWithTitle:@"Compose Tweet"
message:nil
delegate:self
cancelButtonTitle:@"Cancel"
otherButtonTitles:nil];
tweetTextView = [UITextView new];
[tweetTextView setText:[NSString stringWithFormat:@"%@ %@", [[NSUserDefaults standardUserDefaults] valueForKey:@"tweetText"], self.setShareURL]];
[tweetAlert setValue:tweetTextView forKey:@"accessoryView"];
[tweetAlert addButtonWithTitle:@"Tweet"];
[tweetAlert show];
[tweetTextView becomeFirstResponder]; // focus textview and open keyboard
je tente de se concentrer sur le UITextView dans la dernière ligne de telle sorte que le clavier est ouvert lorsque UIAlertView apparaît. Cependant, le clavier n'apparaît pas et l'UITextView n'est pas au point.
J'ai aussi essayé
[[tweetAlert valueForKey:@"accessoryView"] becomeFirstResponder];
Mais je reçois l'erreur
*** Terminating app due to uncaught exception 'NSUnknownKeyException', reason: '[<UIAlertView 0x1358b3200> valueForUndefinedKey:]: this class is not key value coding-compliant for the key accessoryView.'
Toute idée de se concentrer sur le UITextView, qui est intégré dans un accessoryView dans un UIAlertView créé dynamiquement?
1) 'UIAlertView' a été dépréciée depuis iOS 8. Donc, vous devriez utiliser' UIAlertController'. 2) Ni UIAlertView ni UIAlertController ne sont conçus pour ajouter des contrôles personnalisés. Vous devriez créer ou trouver un contrôle personnalisé qui supporte un 'UITextView'. 3) Quel est ce 'accessoireView 'que vous essayez d'utiliser? Il n'y a rien de tel dans 'UIAlertView'. Peut-être que vous pensez à 'UITableViewCell'. – rmaddy