219 votes

Convertir Storyboard de l'iPhone à l'iPad

J'ai un iPhone qui a un storyboard. Maintenant, je veux fournir un iPad application aussi. Je me suis donc demandé s'il existait une fonction qui m'aide à convertir mes iPhone storyboard à un iPad storyboard.

Pour être précis :

Existe-t-il une fonction similaire ou seulement la méthode manuelle ?

5 votes

Oh merci je ne savais pas que je devais les marquer, j'ai marqué une réponse maintenant comme étant la bonne. J'ai aussi fait ça dans mes anciens fils de discussion, merci.

1 votes

Une info détaillée avec des étapes et des images se trouve ici à datacalculation.blogspot.in/2014/09/

537voto

tharkay Points 4345

J'ai trouvé une sorte de solution :

  1. Dupliquer votre iPhone-Storyboard et le renommer MainStoryboard_iPad.storyboard

  2. Fermez Xcode et ouvrez ce fichier dans un éditeur de texte.

  3. Recherche de targetRuntime="iOS.CocoaTouch" et le changer en targetRuntime="iOS.CocoaTouch.iPad"

  4. Changez le code dans le MainStoryboard_iPad.storyboard de :

    <simulatedScreenMetrics key="destination" type="retina4"/> à

    <simulatedScreenMetrics key="destination"/>

  5. Maintenant, sauvegardez tout et rouvrez Xcode. Le Storyboard de l'iPad a le même contenu que le fichier de l'iPhone mais tout a pu être désorganisé.

Cela m'a fait gagner des heures. J'espère que cela vous aidera.

20 votes

+1 Si je pouvais, je vous donnerais +100 de ma propre réputation. Des conseils brillants ! La seule chose que je n'ai pas pu faire est d'ouvrir le storyboard avec Dashcode, j'ai donc utilisé TextWrangler (mais je pense que n'importe quel éditeur de texte ferait l'affaire). Merci !

45 votes

Bon conseil, merci. Pendant que vous y êtes, vous pouvez aussi probablement changer toutes les width="320" en width="768", height="480" en height="1024", etc... directement à partir d'ici. C'est beaucoup plus simple que de le faire élément par élément dans IB.

63 votes

N'utilisez pas Dashcode, ni textWrangler, à l'intérieur de xCode simplement : clic droit sur le storyboard -> "open as" -> "Source Code" quand c'est fait, faites la même chose sauf que vous utilisez "Interface Builder - IOS StoryBoard".

61voto

Malls Points 515

Si vous aviez créé un projet universel, par défaut un storyboard vide pour iPad aurait été créé, il vous suffit de sélectionner le storyboard de l'iPhone select all (Command+A), de le copier (Command+C) et de le coller sur le storyboard de l'iPad. Veillez à déplacer le point d'entrée du storyboard vide vers le storyboard nouvellement copié avant de compiler.

9 votes

Meilleure réponse, solution facile & permet de modifier l'interface facilement par la suite, contrairement à la meilleure réponse :)

0 votes

Qu'en est-il de la mise en page ?

10voto

Nelson Brian Points 253

Ça n'a pas vraiment marché pour moi. J'ai fait quelque chose d'un peu différent.

  1. Créer un nouveau fichier de story board pour la version iPad
  2. Ouvrez le nouveau fichier et le fichier que je veux copier dans textwrangler (éditeur de texte).
  3. Copie le texte xml de l'ancien fichier vers le nouveau fichier entre ces balises xml.
  4. Première étiquette <scenes> <!--Contents View Controller-->
  5. Collez ici
  6. Étiquettes de fin </class> </classes>

Ça a marché pour moi. J'ai obtenu une nouvelle mise en page avec toutes mes prises connectées, ce qui à lui seul m'a fait gagner quelques heures.

1 votes

+les autres n'ont pas marché pour moi et avec ce fonctionnement tout marche pour moi comme prévu

4 votes

Vous pouvez le faire à partir de Xcode. Il suffit de faire un clic droit/contrôle sur le .storyboard et cliquez sur Open As > Source Code pour visualiser le XML brut.

8voto

Kirit Vaghela Points 3653
1. Create New Storyboard file with MainStoryboard_iPad.storyboard
2. Copy All the views from MainStoryboard and paste to MainStoryboard_iPad.storyboard

8voto

Bharat Points 1140

En lisant de nombreux fils sur stackoverflow, j'ai découvert que la solution est

Dupliquez votre iPhone-Storyboard et renommez-le MainStoryboard_iPad.storyboard.

2.Cliquez avec le bouton droit de la souris sur le storyboard -> "Ouvrir sous" -> "Code source".

Recherchez targetRuntime="iOS.CocoaTouch "et changez-le en targetRuntime="iOS.CocoaTouch.iPad".

5.rechercher <simulatedScreenMetrics key="destination" type="retina4"/> et le changer en <simulatedScreenMetrics key="destination"/>

4. sauvegardez maintenant tout et faites un clic droit sur MainStoryboard_iPad.storyboard "open as" -> "IOS StoryBoard". 5. vous devrez peut-être aussi modifier vos contraintes. C'est tout ce que vous avez fait.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X