J'ai une application qui a 2 variantes qui ne diffèrent que de la marque. Pour chaque version, j'ai une approvisionnement et un lanceur dans un catalogue d'actifs. J'ai créé une cible différente pour chaque version. Dans la deuxième version lorsque j'essaie de sélectionner Appicon dans le deuxième catalogue d'actifs, il suffit de parra défaut sur le premier. Supprimer le premier catalogue d'actifs semble le résoudre, mais je préférerais une solution moins «hacky». p>
7 Réponses :
Cela fonctionnera, je l'utilise avec 8 cibles afin ... p>
BTW, je découvre que parfois l'image de lancement ne fonctionne pas lors de l'utilisation de quelques cibles afin que vous puissiez avoir besoin de dupliquer, puis de le sélectionner (Bug XCODE). p>
Dites-vous que vous avez un catalogue d'actifs contenant tous les actifs de toutes les cibles I.E. Appicon pour la 1ère cible, appicon2 pour la 2e cible? Si oui, je ne suis pas sûr que ce soit une bonne idée. Chaque application contiendra des actifs qu'il n'utilise pas et les images de lancement de l'iPad sont grandes.
@Markhorgan Oui c'est ce que j'ai. Je pense que vous avez raison mais une autre méthode fait trop de problèmes pour moi ... jusqu'à ce que Xcode 5 serait mieux ...
Mon erreur n'a pas été incluse sur les deux cibles.
Je pense que la meilleure solution que j'ai proposée jusqu'à présent est de renommer des actifs dans des catalogues d'actifs ultérieurs. Par exemple, vous pourriez avoir 2 catalogues d'actifs contenant des actifs nommés Appicon et LaunchImage. Dans le 2e catalogue d'actifs, j'ai renommé Appicon et LandimageImage à Appicon1 et à LaunchImage1. Donc maintenant, je peux les sélectionner dans la section "Général" des paramètres de construction de la cible. P>
Si vous placez 2 images différentes avec les différents noms dans son un des 2 catalogues d'actifs et que vous appelez l'image de code qui ne doit pas être incluse dans votre cible, vous verrez qu'il est inattendu là-bas. Comment éviter ça?
Solution trouvée - Mon problème est survenu parce que j'utilise des cocoapodes et que leur script compile tous les dossiers .xcassets. La solution est ici: Stackoverflow.com/Questions/ 19488580 / ... .
@DiSabler Je ne renommer que Appicon et Landimage pour que vous puissiez le sélectionner à partir de la liste déroulante dans la section générale des paramètres de la cible. Les autres images peuvent être laissées inchangées.
Après beaucoup de frustration, j'ai des actifs d'images propres, réussies et séparées. Voici ce qui a fonctionné pour moi: P>
J'ai utilisé Xcode pour créer un catalogue d'images pour la première cible (fichier, nouveau, fichier, actif). Ce a une adhésion à cet objectif seulement. Comme Mark Horgan a suggéré, je nommé l'appicon interne et les lanceurs, si seulement pour faciliter la tâche pour moi-même. p> li>
Suivant, j'ai supprimé ce catalogue de mon projet en utilisant la possibilité de supprimer des références. p> li>
J'ai répété l'étape 1 et j'ai créé un catalogue d'images pour la 2e cible. Il a une adhésion à ce 2e cible seulement. L'attribution du catalogue à ma cible était délicate car XCode uniquement proposé «N'utilisez pas de catalogue d'images» comme option. Je choisis cette option, puis Xcode propose "Utiliser un catalogue d'actifs". J'ai choisi ma nouvelle catagot. Encore une fois, j'ai nommé l'appicon interne et les lanceurs à Référencez la 2e cible afin que je puisse le reconnaître. p> li>
Comme dans 2, j'ai supprimé le catalogue avec une suppression de références supprimées. p> li>
Départ Xcode pour un moment, j'ai ouvert une fenêtre de recherche et située mes deux différents images.xcassets fichiers qui avaient été mis sous différents Répertoires de Xcode. J'ai renommé ces fichiers à chaque référence leur cible. (Je les ai également déplacés dans le dossier principal, mais bien sûr c'est une préférence.) p> li>
retour dans xcode, i (re) ajouté le xcaquets fichiers, un à la fois, en veillant à ce qu'ils soient ajoutés de manière appropriée à leur cible et copié aux ressources. p> li>
puis dans xcode j'ai sélectionné chaque cible et utilisé l'onglet Général pour spécifier correctement l'image catalogue pour chaque cible. P> li> ol>
J'ai utilisé @ user216661 solution, mais dans mon cas, je n'avais pas à faire les étapes 2 à 7. P>
J'ai créé un dossier d'actif avec un nom spécifique pour une cible spécifique (dans mon cas, un dossier d'actif par cible). Ensuite, j'ai ajouté les images à ces dossiers XCASSets en les faisant glisser et en les laissant tomber de Finder. La même chose pour les icônes et les images de lancement. Je n'avais pas à personnaliser les noms graphiques pour chaque cible. P>
Dans cette solution, vous ne stockez aucun graphique à l'extérieur des dossiers d'actifs. P>
Je suis en cours d'exécution avec plusieurs cibles où chacun a son propre fichier de catalogue d'actifs, avec Appicon, KnockImage et une personnalisation, j'utilise dans Storyboard pour les arrière-plan. P>
On dirait que le même problème que j'ai eu, lors de la sélection du catalogue d'actifs des icônes de l'application et de lancer des images, il a fallu le mauvais lorsque vous construisez. Je l'ai résolu en modifiant "l'appartenance cible" pour chaque catalogue d'actifs, le fichier .xcassets. Il est défini pour que chaque fichier XCASSets n'a que la cible qu'elle est liée. Ainsi, une seule cible est sélectionnée par catalogue d'actifs. Maintenant, c'est la bonne appicence et le lancement de la lancée disponible pour chaque cible. P>
S'il vous plaît vérifier mon commentaire pour marquer la réponse de Horgan ci-dessous.
Dans mon cas, j'utilise des pods de cacao. Le script de cacao pods Assurez-vous de nettoyer votre projet et de supprimer le dossier de données dérivé. p>
Les pièces à supprimer peuvent être trouvées ici: p>
pods-resources.sh code> a provoqué le problème. Supprimer les pièces d'actifs du script a résolu le problème. P>
Après avoir supprimé ces sections du pods-resources.sh code>, la petite fenêtre où vous vérifiez que les cibles de chaque catalogue d'actifs n'apparaissent pas. Est-ce attendu? Si oui, comment puis-je les mettre maintenant?
Cette! Jetez un coup d'œil à ce problème de Cocoapodes pour les solutions de contournement. Le crochet Post_install par Jinthagherman est une bonne solution: Github.com/cocoapods/cocoapods/issues/1546 < / a>
Que diriez-vous de modifier simplement les actifs de la construction d'options de réglage. Pour moi, cela a fonctionné. P>
Je ne sais pas si vous l'avez fait ou non, mais il ne devrait y avoir qu'un catalogue par cible (dans votre cas). Vous pouvez modifier quelle cible obtient quel catalogue dans les paramètres de construction du projet.
Les 2 catalogues d'actifs sont dans différentes cibles, bien que les deux apparaissent dans la section générale (icônes d'application et des images de lancement) des deux cibles.
J'ai découvert que si vous renommez les actifs contradictoires dans le 2e catalogue d'actifs, il semble fonctionner, c'est-à-dire Renommer Appicon à Appicon1
Dupliqué possible de Projet Xcode avec plusieurs cibles et catalogues d'actifs multiples a>