8

Je fais un cadre pour une entreprise et j'ai terminé tout le code. J'essaie maintenant de l'empaqueter dans un cadre. En guise de test, je fait une méthode avec ce nom: -(void)Hello:(NSString *)worldText;Erreur "Aucune méthode de classe connue pour sélecteur" Bonjour: "" dans un cadre sur mesure

Lorsque je tente de l'appeler dans l'application du cadre en utilisant ce code [CompanyMobile Hello:@"World"];, je me fais une erreur de compilation qui dit

Aucun connu méthode de classe pour sélecteur 'Bonjour:'

Le .m dans mon cadre est la suivante:

#import "Hello.h" 

@implementation Hello 

- (id)init 
{ 
    self = [super init]; 
    if (self) { 
     // Initialization code here. 
    } 

    return self; 
} 

-(void)Hello:(NSString *)world { 

} 

@end 

Le .h dans mon cadre est la suivante:

#import <Foundation/Foundation.h> 

@interface Hello : NSObject 
-(void)Hello:(NSString *)world; 
@end 

Le .h dans ma demande

// 
// FMWK_TESTViewController.h 
// FMWK TEST 
// 
// Created by Sam on 6/15/11. 
// Copyright 2011 __MyCompanyName__. All rights reserved. 
// 

#import <UIKit/UIKit.h> 
#import <companyMobile/Hello.h> 
@interface FMWK_TESTViewController : UIViewController 

@end 

Le .m dans ma demande

// 
// FMWK_TESTViewController.m 
// FMWK TEST 
// 
// Created by Sam Baumgarten on 6/15/11. 
// Copyright 2011 __MyCompanyName__. All rights reserved. 
// 

#import "FMWK_TESTViewController.h" 

@implementation FMWK_TESTViewController 

- (void)didReceiveMemoryWarning 
{ 
    [super didReceiveMemoryWarning]; 
    // Release any cached data, images, etc that aren't in use. 
} 

#pragma mark - View lifecycle 

- (void)viewDidLoad 
{ 
    [Badgeville Hello:@"Sam"]; 
    [super viewDidLoad]; 
    // Do any additional setup after loading the view, typically from a nib. 
} 

- (void)viewDidUnload 
{ 
    [super viewDidUnload]; 
    // Release any retained subviews of the main view. 
    // e.g. self.myOutlet = nil; 
} 

- (void)viewWillAppear:(BOOL)animated 
{ 
    [super viewWillAppear:animated]; 
} 

- (void)viewDidAppear:(BOOL)animated 
{ 
    [super viewDidAppear:animated]; 
} 

- (void)viewWillDisappear:(BOOL)animated 
{ 
    [super viewWillDisappear:animated]; 
} 

- (void)viewDidDisappear:(BOOL)animated 
{ 
    [super viewDidDisappear:animated]; 
} 

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation 
{ 
    // Return YES for supported orientations 
    return YES; 
} 

@end 

Répondre

41

Vous avez défini Hello: comme une méthode d'instance, mais vous envoyez Hello: à la classe. Pour définir une méthode de classe, vous écrivez + (void)Hello: plutôt que - (void)Hello:.

Questions connexes