Apriamo il nostro vecchio progetto e creiamo una nuova classe:
File -> new File -> Objective-c class andiamo avanti subclass NSObject
e come nome gli diamo MathUtility
Ora andremo a creare un nuovo metodo ma questa volta sarà un metodo di classe (identificabile con il segno +)
andiamo su MathUtility.h e aggiungiamo quanto segue :
#import <Foundation/Foundation.h> &nbsp; @interface MathUtility : NSObject{ } +(float)circonferenzaDaRaggio:(float)raggio; @end
Andiamo ora nel file .m e inseriamo invece questo codice :
#import "MathUtility.h" @implementation MathUtility +(float)circonferenzaDaRaggio:(float)raggio{ float circonferenza=2*pi*raggio; return circonferenza; }
Infine dobbiamo modificare il codice nel file notifica in modo da richiamare il nuovo metodo di classe.
Conviene probalbilmente eliminare il vecchio codice andiamo prima su Notifica.h e cancelliamo
-(float)circonferenzaDaRaggio:(float)raggio;
Passaggio di valori per riferimento .
Ora faremo in modo oltre a utilizzare la classe appena creata in modo tale che ci calcoli la circonferenza modificheremo anche l’azione testo
in modo che ci dirà anche con quale raggio è stato calcolata la circonferenza
</span> &nbsp; #import "Notifica.h" #import "MathUtility.h"//importiamo la calsse appena creata @implementation Notifica &nbsp; - (id)init { self = [super init]; if (self) { // Initialization code here. } return self; } &nbsp; -(IBAction)testo:(id)sender{ float raggio=0.0; float circonferenza=[self genera:&raggio]; [textView insertText:[NSString stringWithFormat:@"Con un raggio di %f , la circonferenza è: %f\n",raggio,circonferenza]]; } &nbsp; -(float)genera:(float*)original { float raggio =[textField floatValue]; *original=raggio; float circonferenza=[MathUtility circonferenzaDaRaggio:raggio];/*modifichiamo il metodo in modo da utilizzare la classe creata*/ return circonferenza; } @end
Download progetto Link