Je suis nouveau à Obj-C, et j'ai une classe, avec une variable d'une classe, et j'ai une fonction qui n'est pas dans une classe que j'ai besoin d'appeler une fonction de la variable du premier à partir de, quand la première classe appelle la fonction. Cest écrit tout faux, mais je ne sais pas les bons mots si:Appelez la fonction de classe obj-c d'une autre classe
Root.h:
@interface Root {
UITableView *tableview;
}
@property (nonatomic,retain) UITableView *tableview;
@end
J'ai une fonction (Root est un delagate, il est appelé, et appelle une autre fonction, non dans une classe ou quoi que ce soit:
void Search()
{
//here I need to call a function, I dont know how. If I was in Root.m, it would be
//[self.tableview reloadData];
Mais ici, je ne sais pas comment l'appeler, ive essayé passer Rechercher un pointeur vers une fonction dans Root.m qui appelle la fonction:
-(void) update {
[self.tableview reloadData];
}
-(void) anotherFunction {
Search(update);
ou
Search(self.update);
etc mais il a toujours des erreurs là-bas, j'ai essayé aussi passer un pointeur (auto) à la recherche, et d'appeler
[pointer.tableview reloadData];
mais que les erreurs quand je le lance:
unrecognized selector sent to instance 0x3detc
Comment procéder?
(désolé si cela était très confus)
Oui. mais ne serait-ce pas créer une autre instance de cette classe? Cela ne fonctionne pas, et donne la même erreur que le passage d'un pointeur à la classe. – zacaj
Votre méthode de recherche semble également être en C au lieu d'Obj-C. Bien que cela soit certainement acceptable, y a-t-il une raison de ne pas le coder en tant qu'objectif C? – ennuikiller
Je n'aime pas Obj-c, mais surtout parce que la méthode de recherche est supposée être multi-plateforme, et je ne veux pas avoir à la réécrire si une plateforme ne supporte pas obj-c. Il est quand même déclaré dans un fichier mm, car sinon il ne compilera pas. – zacaj