2

MKLocalSearch を使用して住所を検索しようとしていますが、Maps (Apple のアプリ) などの正確な住所ではなく、ビジネスしか思い浮かびません。

みんなが私を助けてくれることを願っています - ありがとう!:)

MKLocalSearchRequest *request = [[MKLocalSearchRequest alloc] init];
request.naturalLanguageQuery = query;
request.region = self.mapView.region;

[UIApplication sharedApplication].networkActivityIndicatorVisible = YES;
self.localSearch = [[MKLocalSearch alloc] initWithRequest:request];

[self.localSearch startWithCompletionHandler:^(MKLocalSearchResponse *response, NSError *error){

    [UIApplication sharedApplication].networkActivityIndicatorVisible = NO;

    if (error != nil) {
        [[[UIAlertView alloc] initWithTitle:@"Map Error"
                                    message:[error description]
                                   delegate:nil
                          cancelButtonTitle:@"OK"
                          otherButtonTitles:nil] show];
        return;
    }

    self.results = response;

`

4

1 に答える 1

0

タイプ MKMapItem の結果配列では、tableView が表示されたときにアドレスを提供するようにセルを構成する必要があります。簡単な例を次に示します。

override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {

    let IDENTIFIER = "CellID"
    let cell = tableView.dequeueReusableCellWithIdentifier(IDENTIFIER, forIndexPath: indexPath) as! UITableViewCell

    // Configure the cell...
    var item: MKMapItem = results[indexPath.row]

    cell.textLabel?.text = item.placemark.name
    cell.detailTextLabel?.text = item.placemark.addressDictionary["Street"] as? String

    return cell
}

これはすべて、UITableViewDataSource プロトコルに属する cellForRowAtIndexPath メソッドで行われます。

お役に立てば幸いです。幸運を祈ります。

于 2015-06-05T16:10:01.853 に答える