2013-07-24 3 views
0

Je commence à apprendre iOS et sur mon délégué d'application je gère les bases de données. Dès que mon application fonctionne, elle charge une base de données .sqlite. Ce que je voudrais faire est d'ouvrir une vue (que j'ai déjà) avec deux boutons. Quand j'appuie sur je veux charger une base de données en anglais, et quand j'appuie sur l'autre bouton je veux charger une autre base de données.Accéder à une méthode sur le délégué

Comment puis-je accéder aux fonctions de données de base qui sont sur le délégué pour contrôler la charge du fichier SQLite.

Merci Cordialement

+0

Avez-vous ajouté la base de données à votre projet comme une ressource localisée? –

+0

Oui, j'ai des bases de données sur mon projet. Et je les charge correctement. Mon problème est que je charge la base de données sur le délégué, qui charge la base de données dès que l'application fonctionne. Je voudrais changer cela et charger seulement la base de données après qu'une vue soit présentée. – mmm

+0

J'ai compris votre question, je demandais comment votre base de données est-elle ajoutée à votre projet? La base de données est-elle dans un dossier de ressources localisé? –

Répondre

0

Vous voudrez peut-être vous familiariser avec CoreData et SQLite. http://maniacdev.com/2009/09/iphone-sqlite-vs-core-data-%E2%80%93-which-to-choose

De même, techniquement, vous pouvez charger différentes bases de données sous condition. Jetez un oeil à la détection de leur langue actuelle des paramètres régionaux de l'utilisateur:

[NSLocale currentLocale]; 

https://developer.apple.com/library/ios/#documentation/Cocoa/Reference/Foundation/Classes/NSLocale_Class/Reference/Reference.html

+0

Ce qui se passe, c'est que les méthodes que j'ai sur le délégué sont en train de charger une base de données. Ce que je veux est de charger seulement la base de données quand je veux. Mais il charge sur le délégué. Puis-je changer les fonctions du délégué à n'importe quel viewController? Merci – mmm

+0

Comment puis-je définir le contrôleur de vue pour être le délégué? Désolé je suis nouveau à ce :) merci – mmm

+0

Vous ne pouvez techniquement déplacer les méthodes UIApplicationDelegate à un autre objet. Au lieu de cela, vous devrez charger votre base de données SQLite ou vos objets CoreData dans votre viewController. Vous n'avez pas à les charger exclusivement dans le délégué principal de l'application et vous pouvez les charger comme vous le souhaitez ailleurs. – Kurzee

Questions connexes