Je veux activer le copier-coller standard pour un TextView (le même que pour EditText). Comment puis-je le faire?
J'ai essayé d'utiliser un EditText non modifiable mais cela ne fonctionnait pas bien (parfois il devenait modifiable ou la superposition de copier-coller n'était pas affichée). Et ce n'est probablement pas une bonne approche en général.
Besoin d'une solution fonctionnelle à partir de l'API 7.
ClipboardManager
est disponible depuis l'API 1 (regardez ici ). Que diriez-vous d'appuyer longuement, avec une fenêtre contextuelle à copier dans le presse-papiers?Réponses:
Essayez
android:textIsSelectable
.c'est à dire,
android:textIsSelectable="true"
la source
EditTextPreference
prend déjà en charge le copier / coller. Cela semble certainement dans l'application Paramètres.Pour activer le copier / coller standard pour TextView, U peut choisir l'une des options suivantes:
Modification du fichier de mise en page: ajoutez la propriété ci-dessous à votre TextView
android:textIsSelectable="true"
Dans votre classe Java, écrivez cette ligne pour la définir par programme.
myTextView.setTextIsSelectable(true);
Et appuyez longuement sur TextView, vous pouvez voir la barre d'action copier / coller.
la source
Cela fonctionne pour la copie pré-Honeycomb:
la source
android:textIsSelectable
vies dans la mise en page, il sera simplement ignoré aux niveaux d'API inférieurs. Utilisez ensuite la solution d'Ixx dans une instruction if qui vérifie si le niveau d'API est inférieur à 11. Le meilleur des deux mondes. Ceandroid:textIsSelectable
qui est bien, c'est qu'il vous donne la barre d'action de sélection de texte de la plate-forme et qu'il a une belle sensation native.Solution pour le thème plein écran sans
ActionBar
Étendre
TextView
et coller dans le constructeur le code suivantla source
Dans xml textview collez ce code
Puis dans un fichier java,
Condition: vous devez copier et coller le texte qui se trouve dans la vue de texte.
OutCome: En utilisant textview, une fois que j'ai cliqué sur le textview. Il a automatiquement copié le texte qui se trouve dans la vue de texte.
Remarque: lors de l' importation de clipboardmanager, essayez de préférer
Veuillez préférer le gestionnaire de presse-papiers texte
essayez d'éviter le gestionnaire de presse-papiers de contenu
la source
utiliser le thème
ou
définir TextView en xml
voir le résultat
la source
si quelqu'un veut faire un effort supplémentaire et faire la sélection et la copie dans le presse-papiers en un seul clic:
phone est le TextView et phone.Text est le texte qui sera copié dans le presse-papiers.
la source
c'est mieux:
la source
Pour un
EditText
, dans le manifeste à l'intérieur de l'activité, utilisezandroid:windowSoftInputMode="adjustResize"
la source