Je comprends que je ne peux pas passer de variables d'instance dans les méthodes Class, donc je ne suis plus confus de la différence entre les deux.Correspondance de 2 valeurs NSString entre les méthodes de classe
D'où je suis un peu coincé.
J'ai 2 méthodes de classe et ils peuvent tous deux prendre un NSString
comme argument.
Y at-il de toute façon une correspondance? Comme une méthode de classe a une chaîne qui sera une URL qui doit être ouvert dans Safari après un bouton est pressé et donc @selector(openBrowser:)
a besoin de savoir ce que l'URL est de JWKObjectView01
S'il vous plaît me dire qu'il ya un moyen de fais ça ??
J'ai essayé de changer tout à des méthodes d'instance, mais les application se bloque lorsque j'appuie sur le bouton - donc je suis en train de travailler sur cette :-)
Merci à l'avance. PS Je sais que je commence par dire que je comprends que vous ne pouvez pas mélanger les 2 classes - autant que je sache, mais peut-être qu'il me manque quelque chose?
// code ajouté:
UIView classe .h
@interface JWKObjectView01 : UIView <UIWebViewDelegate>
{
NSString *string;
NSURL *url;
NSUserDefaults *defaults;
}
+ (JWKObjectView01 *)anyView:(UIView *)anyView
title:(NSString *)title
weburl:(NSString *)webstring;
+ (void)openBrowser:(NSString *)urlString;
fichier .m
+ (JWKObjectView01 *)anyView:(UIView *)anyView
title:(NSString *)title
weburl:(NSString *)webString
{
JWKObjectView01 *anotherView = [[JWKObjectView01 alloc] initWithFrame:CGRectMake(0,0,320,200)];
anotherView.backgroundColor = [UIColor yellowColor];
[anyView addSubview:anotherView];
UIButton *button = [UIButton buttonWithType:UIButtonTypeRoundedRect];
button.frame = CGRectMake(20, 20, 100, 100);
[button setTitle:title forState:UIControlStateNormal];
[button addTarget:self action:@selector(openBrowser:) forControlEvents:UIControlEventTouchUpInside];
[anotherView addSubview:button];
return anotherView;
}
+ (void)openBrowser:(NSString *)urlString;
{
//This is where I am stuck and I need the variable - weburl:(NSString *)webString -
NSURL *url = [NSURL URLWithString:urlString];
[[UIApplication sharedApplication] openURL:url];
}
fichier .m View Controller
-(void)viewDidLoad
{
[JWKObjectView01 anyView:self.view title:@"OPEN" weburl:@"http://google.com"];
}
Veuillez poster ce que vous avez essayé. –
"une méthode Class a une chaîne qui sera une url qui doit être ouverte dans Safari après qu'un bouton est pressé" - cette partie est très difficile à comprendre sans un exemple de code: la discussion sur les variables de classe "ayant" des sons de chaînes suspecte, car la seule façon dont une méthode de classe peut conserver son état est à travers des variables statiques et des singletones dans d'autres classes. Je soupçonne que le problème est quelque part dans ce domaine; veuillez poster le code de la méthode de classe 'A'. – dasblinkenlight
Très bien - J'ai ajouté le code, j'espère que ça aide. –