j'ai téléchargé le nouveau xcode-5 et viens de commencer à l'utiliser.
Nous pouvons créer des applications directement, y compris storyboard et ARC, ce n’est pas une option comme les versions précédentes.
Ma question est donc la suivante: comment utiliser xcode5 sans ARC ni storyboard? nous devons supprimer manuellement le fichier de storyboard? ou existe-t-il une autre option?.
Créer un projet avec une application vide et ajouter un contrôleur de vue (j'ai ajouté TestViewController ici)
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions: (NSDictionary *)launchOptions
{
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
// Override point for customization after application launch.
TestViewController *test = [[TestViewController alloc] initWithNibName:@"TestViewController" bundle:nil];
UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:test];
self.window.rootViewController = nav;
[self.window makeKeyAndVisible];
return YES;
}
ÉTAPES POUR RETIR L'ARC
1) Dans le jeu de paramètres de construction Comptage automatique de références à NO .
////////////////////////////////////////////////////// /////////////////////////////FIN//////////////////// ////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////// /////////////////////////////
Si vous avez déjà créé une application avec storyboard et ARC alors
ÉTAPES POUR RETIRER LE TABLEAU DE L'HISTOIRE
1) Supprimez le fichier Main.storyboard de votre projet.
2) Ajoutez de nouveaux fichiers avec xib pour votre contrôleur. S'il n'est pas ajouté dans les sources compilées lors des phases de construction, ajoutez-le manuellement.
) Supprimer Nom de la base du fichier du storyboard de plist.
4) Modifier appdelegate didFinishLaunchingWithOptions fichier et ajouter:
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] ;
[self.window makeKeyAndVisible];
juste comme:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] ;
// Override point for customization after application launch.
TestViewController *test = [[TestViewController alloc] initWithNibName:@"TestViewController" bundle:nil];
UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:test];
self.window.rootViewController = nav;
[self.window makeKeyAndVisible];
return YES;
}
Maintenant, dans l'exemple ci-dessus, vous devez gérer manuellement la gestion de la mémoire, par exemple:
self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] autorelease];
[test release];
ÉTAPES POUR RETIR L'ARC
1) Dans le jeu de paramètres de construction Comptage automatique de références à NO .
Au lieu de supprimer le fichier de story-board, vous pouvez créer un nouveau projet avec un modèle d'application vide. Vous éviterez ainsi la création de fichiers de storyboard.
Utilisez les étapes suivantes pour omettre le storyboard:
LoginViewController
)didFinishLaunchingWithOptions
dans AppDelegate.m
fichier comme spécifié ci-dessous.Changer en:
#import "LoginViewController.h"
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
// Override point for customization after application launch.
self.window.backgroundColor = [UIColor whiteColor];
LoginViewController *loginVC = [[LoginViewController alloc] initWithNibName:@"LoginViewController" bundle:nil];
UINavigationController *navigationController = [[UINavigationController alloc] initWithRootViewController:loginVC];
self.window.rootViewController = navigationController;
[self.window makeKeyAndVisible];
return YES;
}
Remove ARC: Accédez au paramètre de construction -> Comptage automatique de références Objective-C -> NO.
créer un nouveau projet
! [Créer un nouveau projet]
// supprime le nom de base du fichier de storyboard principal dans Info
Ajouter ce code dans appdelegate
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
// Override point for customization after application launch.
self.window.backgroundColor = [UIColor whiteColor];
LoginViewController *loginVC = [[LoginViewController alloc] initWithNibName:@"LoginViewController" bundle:nil];
UINavigationController *navigationController = [[UINavigationController alloc] initWithRootViewController:loginVC];
self.window.rootViewController = navigationController;
[self.window makeKeyAndVisible];
return YES;
}
Ensuite, supprimez automatiquement votre story-board.
S'il vous plaît essayez ceci ... exécuté avec succès. Merci
Raccourci: je préfère
Créez le projet sans Storyboard et ARC dans xcode 4, puis ouvrez ce projet dans xcode 5.
Xcode 4 avait la case "Utiliser les storyboards" lorsque vous avez créé un nouveau projet. Il est possible de récupérer les anciens modèles d’application Xcode 4 (fichiers XML) et de les convertir en Xcode 5. Ainsi, vous récupérez les anciens modèles qui vous permettent de choisir si vous souhaitez ou non des story-boards.
J'ai écrit un script qui fait tout ce qui fonctionne pour vous: https://github.com/jfahrenkrug/Xcode4templates
Après avoir exécuté le script, vous aurez une section "Xcode 4" dans l'écran "Nouveau projet":
Et ensuite - Hélas! - Vous récupérez vos choix bien-aimés:
Vous aurez besoin d'une copie du bundle Xcode 4 .app de http://developer.Apple.com/ios pour utiliser ce script.
J'ai un conseil:
J'espère que votre projet fonctionnera! :RÉ