Copier coller du texte dans le simulateur iOS

107

Cela doit être documenté quelque part, mais je ne le trouve pas.

Dans mon application utilisant le simulateur iPad, il y a un champ de texte dans lequel je veux que l'utilisateur colle du texte. Dans le monde réel, l'utilisateur copiera le texte de l'adresse Safari dans le champ de texte. Mais j'essaye de faire cela dans le simulateur d'ios ipad, mais avec seulement des résultats partiels.

Après avoir relancé l'application, je peux immédiatement coller du texte dans le champ de texte avec le Edit|Paste Textmenu du Mac ou avec Shift-Command-V, (mais pas avec juste Edit|Paste, mais c'est OK). Le besoin du Shift est ennuyeux mais je peux vivre avec.

Mais si j'essaye de copier une autre URL sur le Mac puis à nouveau, Edit|Paste Textou même d'utiliser la Pastebulle sur le simulateur, je n'obtiens pas le nouveau texte, mais le texte d'origine.

Est-ce courant? Est-ce une caractéristique du simulateur qu'il n'est pas connecté en direct au presse-papiers de l'ordinateur hôte?

zerowords
la source
1
Faites-le sur un appareil. Ne faites pas confiance à la façon dont le simulateur fonctionne pour son fonctionnement.
Jeremy1026

Réponses:

100

Veillez à ne pas confondre le presse-papiers du mac avec le presse-papiers du simulateur. Ils ne sont pas les mêmes.

Le simulateur simule un appareil iOS, avec son propre presse-papiers iOS que les applications exécutées sur cet appareil (simulateur) utilisent via les éléments d'interface utilisateur de sélection / copier / coller iOS pup-up.

Complètement distinct de cela: votre mac a son propre presse-papiers et son propre contenu. Le programme Simulator exécuté sur votre Mac propose l'élément de menu Edition> Coller le texte. Le programme implémente cet élément de menu en accédant au presse-papiers de votre Mac et tape le texte dans le simulateur comme si l'utilisateur utilisait le clavier. Le presse-papiers iOS n'est ni accessible ni affecté par les fonctions du menu Edition de l'application Simulator.

Mise à jour: à partir de Xcode 6, vous devez choisir l' Edit > Pasteélément de menu dans le simulateur iOS (cela transfère les données entre le presse-papiers Mac et le presse-papiers iOS), puis appuyez sur le champ dans le simulateur et appuyez sur la bulle "Coller".

Dans votre question, vous ne spécifiez pas de quel "Safari" vous copiez l'URL. Cela pourrait être l' application mac safari ou l'application safari du simulateur . Faire une copie du programme mac safari va dans le presse-papiers mac, faire une copie de l'application safari va dans le presse-papiers iOS à l'intérieur du simulateur.

Je pense que vos problèmes viennent de la confusion des deux, en pensant qu'il y a un presse-papiers que tout partage.

Bill Patterson
la source
12
Dans Xcode 9 (peut-être avant), il y a un élément de menu sous éditer "Synchroniser automatiquement le presse-papiers" Je pense que cela gardera le presse-papiers de votre mac et le presse-papiers du simulateur synchronisés, donc ils sont toujours les mêmes.
Chris Slade
111

J'ai trouvé que même avec Édition> Synchroniser automatiquement la table de montage cochée, la fonctionnalité ne fonctionnait pas.

Cependant, il suffit de décocher puis de retaper cette option pour corriger la fonctionnalité!

J'espère que ça marche pour quelqu'un.

Hardanger
la source
8
Cela a fonctionné pour moi pour réactiver le partage du presse-papiers après la mise à niveau vers Xcode 10.1.
Jon Steinmetz
2
Oui, cela fonctionne. Cependant, pour une seule fois. J'ai dû répéter les mêmes étapes la prochaine fois pour que cela fonctionne. Quoi qu'il en soit, heureux qu'une option soit là :)
dim
1
A travaillé pour moi! Merci d'avoir pris le temps de poster.
Andi
67

Copiez le texte sur le mac, puis cliquez sur le champ de texte dans le simulateur et appuyez sur

Commande Shift V

Shane
la source
1
A fini par être une combinaison pour moi? Super bizarre. J'ai dû coller dans la barre de menu, puis faire cela pour obtenir la pâte.
Brendan
On dirait que cette approche fonctionne souvent mais pas tout le temps. Dans mon cas, la méthode de travail à 100% consiste à Cmd + C du texte, puis copiez-le par le menu contextuel de la souris, puis dans Simulator Cmd + V, Cmd + Shift + V, collez via le menu. Étrange mais fonctionne ...
brigadir
14

Veuillez cliquer sur l'option "Synchroniser automatiquement la table de montage" dans l'option d'édition du simulateur.

entrez la description de l'image ici

Chathurka
la source
4
J'ai dû décocher cela pour que ma table de montage fonctionne mais je suis content de pouvoir copier / coller à nouveau!
Stuart P.
2
hmmm ne semble pas fonctionner à partir d'os x 10.13.6 et xcode 10.1, sauf si je fais autre chose de mal avec mes paramètres
Daniel Lizik
Casquette sans héros!
Teofilo Israel Vizcaino Rodrig
Toutes les autres réponses sur seulement cmd + c - cmd + v doivent être supprimées. thx
Zaporozhchenko Oleksandr
12

Voici ce qui a fonctionné pour moi.

1) Copiez du texte depuis Mac

2) Dans le simulateur, éditez-> collez ou Command V (je pense que cela copie le texte du presse-papiers Mac dans le presse-papiers du simulateur iOS).

3) Mettez en surbrillance le champ de texte dans le simulateur, puis effectuez la commande + Maj + V.

Rajashekar
la source
9

Xcode 10.0+ :

La désactivation, puis la réactivation de la synchronisation automatique de la table de montage, a résolu le problème.

Vous devrez peut-être le faire plusieurs fois. Parfois, cela prend un certain temps pour le déclencher pour une raison quelconque.

(Edit -> Automatic Pasteboard Sync)

Kirill Kudaev
la source
8

J'ai mis à jour vers os x 10.13.6 et xcode 10.1 et il y a un menu ajouté dans edit

cliquez get pasteboardalors vous pourrez coller via l'info-bulle coller dans le simulateur

Daniel Lizik
la source
3
J'ai dû cliquer Send Pasteboardpour coller dans le simulateur. Get Pasteboarda fait l'action inverse, il a pris le presse-papiers iOS dans le presse-papiers Mac.
qwertzguy
1
c'est maintenant la bonne réponse sauf comme le fait remarquer qwertzguy, vous l'avez à l'envers
evanflash
5

Une chose similaire m'est arrivée et j'ai trouvé une étrange solution de contournement, cela peut aider toute autre personne susceptible de rencontrer le même problème. Essayez les étapes suivantes:

  1. Désactivez puis réactivez l' Automatically Sync Pasteboardoption, elle se trouve dans le Editmenu du simulateur
  2. Copiez le texte souhaité depuis votre Mac
  3. Collez à nouveau le texte sur votre Mac dans un éditeur de texte comme Atom ou même dans la barre d'adresse de votre navigateur
  4. Sélectionnez tout le texte Cmd+Apuis coupez / copiez Cmd+X/Cmd+C
  5. Vous devriez maintenant pouvoir coller le texte sur le simulateur
Mansur76
la source
2

Parfois, il est très difficile de taper de longues URL dans le simulateur iOS. Il devrait y avoir un moyen de copier l'URL du champ de texte Max OS vers iOS. Voici comment vous pouvez le faire:

  • Copiez du texte depuis Mac
  • Ouvrez le simulateur et cliquez sur un champ de texte où vous souhaitez coller le texte
  • Maintenant, dans le menu Simulator, cliquez sur Edit->Paste Text

et c'est tout. Votre texte du tampon de copie Mac OS devrait maintenant être là dans le champ de texte du simulateur iOS.

Adil Malik
la source
2

Dans un nouvel émulateur, je n'ai pas d'option "coller" et la synchronisation ne fonctionnait pas pour le simulateur. Il semble que dans le simulateur, vous DEVEZ copier quelque chose dans le presse-papiers interne avant que la synchronisation ne fonctionne réellement.

Eliram
la source
Cela a sauvé mes fesses! Xcode 10.2 nouvellement installé, nouveau simulateur, rien n'a fonctionné. Puis copié un tout petit peu de code et voíla - j'ai le menu coller! Merci!!!
David H
1

Trois étapes: (Le point clé est de s'assurer que le menu d'aide "Coller" reste visible lorsque vous utilisez "⌘ + V" .)

  1. assurez-vous de sélectionner le point que vous voulez coller dans le simulateur, et le menu d'édition avec "Coller" s'affiche .
  2. utilisez le clavier sur mac, " ⌘ + V ", pour coller le texte dans le presse-papiers du simulateur.
  3. cliquez sur le "Coller" sur editMenu qui montrent ci-dessus, pour coller le texte dans le simulateur textField.

entrez la description de l'image ici

JerryZhou
la source
0

Parfois, il vous suffit de sélectionner Matériel -> réinitialiser le contenu et les paramètres dans le menu du simulateur. alors tout fonctionne automatiquement aussi facilement et transparent que de travailler sous MacOS avec d'autres applications

Nikolay Shubenkov
la source
0

Aucune de ces solutions n'a fonctionné pour moi. J'utilise Simulator 11.4. Et après avoir essayé chacun d'entre eux, j'ai réalisé que tout ce que j'avais à faire était de copier quelque chose sur mon Mac en utilisant Commande + C, puis dans le champ de texte du simulateur, maintenez simplement le clic de souris enfoncé pendant une seconde ou deux supplémentaires, et le menu Coller est apparu automatiquement et a très bien fonctionné.

entrez la description de l'image ici

bgarr
la source
-1

Cela fonctionne pour moi. Sur Safari version 8.0.3 et simulateur IOs version 8.1

  1. Copiez le texte de Safari - mettez le texte en surbrillance puis cmd-v ou Édition> Copier.
  2. Dans Ios Simulator, cliquez sur Modifier> Coller.
  3. Sur TextField ou TextView, faites un clic droit puis sélectionnez Coller.
Oh mon
la source
-1

C'est ce que j'ai trouvé.

  1. Copiez le texte depuis mac.
  2. Dans le simulateur, ouvrez Safari et mettez en surbrillance la barre d'adresse en cliquant dessus.
  3. Appuyez sur Cmd + V
  4. Cliquez une fois sur la barre d'adresse.
  5. La liste déroulante Coller apparaîtra.
  6. Appuyez sur coller.

Shift + Cmd + V fonctionne très bien aussi.

Rishab
la source
-1

⌘ + V: lorsque le simulateur iOS est devant, copiez le contenu du presse-papiers OS X sur iOS, mais ne le collez pas. Encore une fois, cela fonctionne pour le texte et les images.
Vous devez donc procéder comme suit:
1. copier du texte n'importe où dans votre macOS, à l'exception du simulateur iOS.
Dans le simulateur iOS, cliquez sur ⌘ + V, copiez le texte du presse-papiers macOS vers le clipborad du simulateur iOS.
3. dans le simulateur iOS, TextField ou TextView, cliquez sur -> Modifier -> Coller.

wj2061
la source