Передать строку из одного .m в другой .m - PullRequest
0 голосов
/ 27 марта 2011
#import "MainViewController.h"
#import "MyFirstAnnotation.h"


@implementation MainViewController


// Implement viewDidLoad to do additional setup after loading the view, typically from a nib.
- (void)viewDidLoad {
    [super viewDidLoad];
}

- (IBAction)annosetzen:(id)sender{
    CLLocationCoordinate2D coor;
    coor.latitude = 54.3327162876622;
    coor.longitude = 10.1518177986145;

    MKCoordinateSpan span;
    span.latitudeDelta = 0.01;
    span.longitudeDelta = 0.01;
    MKCoordinateRegion region;

    region.center = coor; 
    region.span = span; 

    MyFirstAnnotation *anno = [[MyFirstAnnotation alloc]init]; 
    [mapView addAnnotation:anno];

    [mapView setRegion:region animated:TRUE];

    //MKReverseGeocoder *revGeo = [[MKReverseGeocoder alloc] initWithCoordinate:coor];
    //revGeo.delegate = self; 
    //[revGeo start];   
}

Далее .m, который должен получить строку

#import "MyFirstAnnotation.h"

@implementation MyFirstAnnotation
- (CLLocationCoordinate2D)coordinate { 
    CLLocationCoordinate2D coor; 
    coor.latitude = 54.3327162876622; 
    coor.longitude = 10.1518177986145; 
    return coor;
}
- (NSString *)title {
    return theTitle;
}
- (NSString *)subtitle {
    return theSubTitle;
}

. Заголовок и theSubTitle являются строками и должны быть переданы из MainViewController .m для использования в MyFirstAnnotation .m

У вас есть простой пример, как это сделать?Я очень долго искал этот простой шаг, но я не нашел ответа: - (

Пожалуйста, помогите мне

1 Ответ

0 голосов
/ 27 марта 2011

Вы, вероятно, хотите сделать это?

 MyFirstAnnotation *anno = [[MyFirstAnnotation alloc] init];
 NSString *one = [anno title];     
 NSString *two = [anno subtitle];

edit: чтобы установить строки ОТ первого файла ко второму, вы должны добавить методы установки в

MyFirstAnnotation.h

//...

- (void)setTitle:(NSString*)title;

//...

- (void)setSubTitle:(NSString*)subTitle {

MyFirstAnnotation.m

//...

- (void)setTitle:(NSString*)title {
    theTitle = [title copy];
}


//...

- (void)setSubTitle:(NSString*)subTitle {
    theSubTitle = [subTitle copy];
}

А затем вызвать их из основного файла:

// ....
MyFirstAnnotation *anno = [[MyFirstAnnotation alloc]init];
[anno setTitle:@"qwertt"];
[anno setSubTitle:@"asdfg"];
// ....
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...