2012-06-22 66 views

回答

1

在BiblePlayerViewController创建一个属性的NSDictionary和你的三个字符串添加到字典中,以便您可以阅读在任何你想

NSDictionary *FileDict = [[NSDictionary alloc] initWithObjectsAndKeys:str1,@"key1",str2,@"key2",str3,@"key3",nil]; 
0

在创建NSString类型的变量字典appdelegate.h

NSString *test; 

进口appdelegate.h in BiblePlayerViewController.m 现在使用

得到appdelegate类的参考
Appdelegate *ad; //init with some object 
//now access the NSString var u just created 
[email protected]"your string"; 
+1

Appdelegate应该是静态的。否则,这两个对象将是不同的,其后果将是不确定的。我从来没有见过有人在appdelegate上调用init/alloc –

0

创建的appDelegate的静态参考和的appdelegate

声明NSString的为类变量

将这个是的appdelegate

+(Appdelegate*)getAppdelegate{ 
    return self 
} 

,然后在您的视图 - 控制 做appdelegate.string1 =字符串1等你也可以将这些对象封装在一个数组中,并将它们传递给appdelegate。

这个想法是获得Appdelegate的静态引用。

0

我想你可以使用appdelegate类的共享对象来处理类似的情况。

在AppDelegate类

声明全局对象

#define UIAppDelegate ((MyAppDelegateClass *)[UIApplication sharedApplication].delegate) 

通过声明这一点,从进口的AppDelegate类可以使用AppDelegate类的此共享对象的任何类。

然后就是你在的AppDelegate用作

@interface MyAppDelegateClass : NSObject <UIApplicationDelegate> 
{ 
    NSString *string1; 
    NSString *string2; 
    NSString *string3; 
} 
@property (nonatomic,retain) NSString string1; 
@property (nonatomic,retain) NSString string2; 
@property (nonatomic,retain) NSString string3; 

@end 

然后在AppDelegate的实施

@implementation MyAppDelegateClass 

@synthesize string1; 
@synthesize string2; 
@synthesize string3; 

@end 

在课堂上从那里你需要发送的字符串AppDelegate中使用如下 宣布三个物业您需要先导入AppDelegate类

#import "MyAppDelegateClass.h" 

@interface MyCustomSenderClass : UIViewController 

@end 

并在实施

@implementation MyCustomSenderClass 

- (void) sendStringsToAppDelegate 
{ 
    UIAppDelegate.string1 = myString1; 
    UIAppDelegate.string2 = myString2; 
    UIAppDelegate.string3 = myString3; 
} 

@end 

因此,你可以直接从任何类进口设置一个值的AppDelegate你的AppDelegate类。

我认为这对你有帮助。

相关问题