2010-11-25 14 views
1

Hallo ich habe zwei View-Controller: FirstViewController und SecondViewControllerProblem mit Zugriff auf String von einer anderen Klasse

FirstViewController.h 

#import <UIKit/UIKit.h> 

@interface FirstViewController: { 
NSString *prStr; 
    } 

-(IBAction)setString; 
@property (nonatomic, retain) NSString *prStr; 

@end 

FirstViewController.m 

#import"FirstViewController.h" 

@implementation FirstViewController 

@synthesize prStr; 

-(IBAction)setString{ 
    prStr = [[NSString alloc]initWithFormat:@"1"]; 

    } 

SecondViewController.h 

#import <UIKit/UIKit.h> 

@class FirstViewController; 

@interface SecondViewController: { 
FirstViewController *pr; 
    } 

-(IBAction)example; 
@property (nonatomic, retain) FirstViewController *pr; 

@end 

SecondViewController.m 

#import"SecondViewController.h" 
#import "FirstViewController.h" 

@implementation SecondViewController 

@synthesize pr; 

-(IBAction)example{ 
    NSLog(pr.prStr); 
    if([pr.prStr isEqualToString:@"1"]==YES){ 

    //Do Something   } 

    } 

Wenn ich bauen und App ausführen, bei ex Beispiel für IBAction, auf der Debugger-Konsole erscheint nichts !! Wie kann man von der Aktion von SecondViewController auf die Zeichenkette von FirstViewController zugreifen, um sie auf der Debugger-Konsole anzuzeigen ???

+0

Problem gelöst, ich erklärte eine NSString in appdelegate und ich verwende es als globale Variable: Ich legte die Zeichenfolge in der ersten Ansicht Controller und ich las es im zweiten viewcontroller mit appDelegate.prStr – Claudio

Antwort

1

Das erste Problem ist, dass Sie es nicht zugelassen haben. Auch wenn Sie das zuweisen, sollten Sie als Singleton-Objekt zuweisen.

+0

oder sonst appDelegate verwenden – KingofBliss

1

In Ihrem Beispiel rufen Sie SetString nie wirklich auf, so dass der Wert nicht tatsächlich festgelegt wird.

Abgesehen davon, dass ich denke, es einfach nicht gut practive ist ein propertie des Getter direkt als IBAction zu verwenden (obwohl IBAction gleichwertig ist zu ungültig)

0

U den Speicher für das Objekt (pr) zuzuordnen und versuchen es aus.

Verwandte Themen