2017-01-09 2 views
1

J'essaie d'obtenir une vue personnalisée dans une chaîne attribuée à afficher sur un textView. Je suis capable d'ajouter une image avec un NSTextAttachment, mais ce n'est pas ce que je veux. J'ai une vue personnalisée qui prend en charge Gif et Animated PNG que je voudrais afficher entre le texte.Comment puis-je ajouter une vue personnalisée à une chaîne ou à une vue de texte attribuée?

Exemple:

texte texte texte texte [CustomView] texte [CustomView]. < - Dans la vue du texte, de préférence dans la chaîne attribuée

Je voudrais des conseils quant à l'endroit où je devrais rechercher spécifiquement. Jusqu'à présent, je l'ai vu ... les questions liées

  • Sous NSTextAttachment: How to subclass NSTextAttachment?
  • utilisation NSTextAttachmentContainer ..?
  • NSTextAttachmentCell - Seulement OSX
  • Faites la manipulation dans la vue texte
+1

NSAttributedString est pas une classe de vue. Il hérite directement de NSObject. Soit votre question est erronée ou vous êtes sur le mauvais chemin vers votre objectif. Pouvez-vous expliquer ce que vous essayez d'accomplir? – d00dle

+0

@ d00dle Je veux 1) déterminer si je peux mettre un UIView dans une chaîne attribuée comme je peux avec UIImage. 2) sinon, déterminez ce que je devrais faire pour obtenir mon UIView dans un textview en ligne avec du texte. Par exemple, une solution peut consister à prendre une "capture d'écran" de l'uiView, et en faire une uiimage, puis à mettre cette image dans la chaîne attributeString via une pièce jointe. Mais cela ne préserve pas l'animation, donc j'ai besoin de cette UIView personnalisée –

Répondre

0

texte de mélange avec des images est une tâche compliquée de manière fiable. Et il a été résolu il y a plusieurs années avec l'invention du navigateur Web. Vous pouvez donc utiliser UIWebView pour accomplir ceci. Ou, si vous avez des positions statiques de texte et d'images, vous pouvez utiliser seulement plusieurs contrôles dans votre vue principale. F.e. l'un en dessous de l'autre.

Dans tous les cas, vous devez utiliser un contrôle tiers pour afficher vos gifs, car UIImageView ne le prend pas en charge.

Here is one