Iphone 通过objective-c中的类访问变量
在我的项目中,我的第一个视图是一个登录视图,我希望将用户名输入到其他类中。 我真的不知道如何在其他类中获得它,我在stackoverflow中搜索,但没有找到(我尝试了几种方法,但没有成功) 我告诉你我是如何做到这一点的: login.hIphone 通过objective-c中的类访问变量,iphone,objective-c,getter-setter,Iphone,Objective C,Getter Setter,在我的项目中,我的第一个视图是一个登录视图,我希望将用户名输入到其他类中。 我真的不知道如何在其他类中获得它,我在stackoverflow中搜索,但没有找到(我尝试了几种方法,但没有成功) 我告诉你我是如何做到这一点的: login.h @interface loginViewController:UIViewController <UITextfieldDelegate>{ IBOutlet UITextField *usernameField; IBOutle
@interface loginViewController:UIViewController <UITextfieldDelegate>{
IBOutlet UITextField *usernameField;
IBOutlet UITextField *passwordField;
IBOutlet UIButton *loginButton;
NSString *user;
}
@property (nonatomic, retain) UITextField *usernameField;
@property (nonatomic, retain) UITextField *passwordField;
@property (nonatomic, retain) UIButton *loginButton;
@property (nonatomic, retain) NSString *user;
- (IBAction)login: (id) sender;
- (NSString *)user;
@end
家
@implementation homeViewController
- (void)viewDidLoad
{
[super viewDidLoad];
user2 = LoginViewController.user ; //I tried this after the advice given below, still not working
user2 = LoginViewController.usernameField.text; //same
NSLog(@"user: %@",user2);
}
我将需要在我的所有项目中使用此值,以显示有关连接的客户端的信息
我只需要一个提示或一个我可以使用的示例代码
编辑:我根据给出的建议更改了代码,如果我遗漏了什么,请告诉我在homeViewController中创建类loginViewController的对象
anyRequiredVariable=login.usernameField.text;//Assuming that login is the object of loginViewController Class.
然后根据需要获取或设置登录变量的值
假设homeViewController中需要NSString,请在homeViewController中创建loginViewController对象
anyRequiredVariable=login.usernameField.text;//Assuming that login is the object of loginViewController Class.
这会解决你的问题
干杯两件事:
发送方
参数(getUser:(id)发送方
),但发送的消息没有冒号或参数(getUser
)。这是两件完全不同的事情get
开头-它表示其他内容。选择器(基本上是方法名称的Objective-C术语)应该是user
。因此:
- (NSString *)user {
return user;
}
我试着像你说的那样做,但似乎我无法像那样访问我的loginViewController,我仍然有一个错误(请求非结构或联合中的成员“text”),我试过:userTest=loginViewController.usernameField.text;其中userTest是一个NSString。如果我遗漏了什么,请告诉我。谢谢你的解释,我想我需要阅读更多关于访问器和选择器的内容。一旦我这样做了,我应该如何调用“user”方法来获取字符串user?就像阿迪蒂亚告诉我的那样?它仍然不起作用,没有它我就不能工作,还有什么可以帮忙的吗?谢谢