Связывание действий с URL - PullRequest
1 голос
/ 29 декабря 2011

ОК, я отсталый, поэтому мне нужны четкие инструкции, как связать секцию кода NSURL внизу с щелчком метки, чтобы сделать вызов:

- (void)viewDidLoad {
[super viewDidLoad];
lblText.text = agencyName;
lblPhone.text = phone;
lblEmail.text = email;
lblAddress.text = agcaddress;



//Set the title of the navigation bar
self.navigationItem.title = @"Agency Info"; 
mapView=[[MKMapView alloc] initWithFrame:self.view.bounds];



}


- (IBAction)callPlaceNumber:(id)sender {
    NSString *number = [NSString stringWithFormat:@"tel://%@", phone];
    number = [number stringByReplacingOccurrencesOfString:@" "
                                                 withString:@""];
    [[UIApplication sharedApplication] openURL:[NSURL URLWithString:number]];
}

Я пытался связываться с IBActions и Outlets, чтобы нетпомогло.Нужно ли помещать IBAction в заголовочный файл и каким-либо образом связывать его с меткой?Задача 3-го дня кодирования c и I-OS, так что будь проще для меня.

1 Ответ

1 голос
/ 29 декабря 2011

Вы можете выполнить вызов, нажав на UILabel, но это не рекомендуется :), способ сделать это - перехватить touchEvents и проверить, происходит ли событие прикосновения с метки вызова, чем сделать вызов ... Что-то вроде этого,

Не рекомендуется

Где calLabel - IBOutlet в вашем заголовочном файле ...

-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {

    UITouch *touch = [touches anyObject];

    if ([touch view] == callLabel)
    {
        //Your code here which makes a call...
    }
}//In began

или когда касание заканчивается,

-(void) touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event{
    UITouch *touch = [touches anyObject];

    if ([touch view] == callLabel)
    {
        //Your code here which makes a call...
    }
}//At the end

Рекомендуется ...

Создайте UIButton make IBAction и напишите в нем свою логику вызова ... Как-то так,

- (IBAction)callPlaceNumber:(id)sender {
    NSString *number = [NSString stringWithFormat:@"tel://%@", phoneNumber];
    number = [number stringByReplacingOccurrencesOfString:@" "
                                         withString:@""];
    [[UIApplication sharedApplication] openURL:[NSURL URLWithString:number]];
}

Надеюсь, это поможет!

EDIT

- (IBAction)callPlaceNumber:(id)sender {
    NSString *number = [NSString stringWithFormat:@"tel://12345678"];
    number = [number stringByReplacingOccurrencesOfString:@" "
                                         withString:@""];
    [[UIApplication sharedApplication] openURL:[NSURL URLWithString:number]];
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...