如何在视图中使用appdelegate变量

时间:2012-05-24 11:43:01

标签: iphone

我在appdelegate中声明了变量NSString productname,并从视图中指定了值appdelegate.productname = name。然后我尝试从另一个view.lbl.text=appdelegate.productname获取此值。这是错的吗?

3 个答案:

答案 0 :(得分:2)

你可以在appdelegate.h文件中声明变量,这些变量是全局的,你不需要让appdelegate对象来调用它们。

像这样 -

#import <UIKit/UIKit.h>

@class ViewController;

// these are your variable, both are global. 
int anyNumber; 
NSString *productname;

@interface AppDelegate : UIResponder <UIApplicationDelegate>

@property (strong, nonatomic) UIWindow *window;
@property (strong, nonatomic) ViewController *viewController;
@property (strong, nonatomic) UINavigationController *naviCon;

@end

现在,您可以在任何您想要使用的地方使用这些变量。

只需导入appdelegate.h并自由使用即可。

#import "ViewController.h"
#import "AppDelegate.h"

这是您将值分配给appdelegate字符串的第一个视图。

productname = name; //you can assign it directly, no need to make any object of appdelegate.

现在你可以在任何地方使用它。但要记住你必须导入的小东西

#import "AppDelegate.h"
在你的viewcontroller中

谢谢!

答案 1 :(得分:0)

您可以使用以下代码获取它:

UIApplicationDelegate *appDelegate = [[UIApplication sharedApplication] delegate];
NSString *productName = appDelegate.productname;

答案 2 :(得分:0)

UIApplicationDelegate *appDelegate = [[UIApplication sharedApplication] delegate];
NSString * str = appDelegate.yourstr;