我想开发一个找到最近的ATM的应用程序,如何设置所有这些?找到你当前的位置并输入ATM位置。
答案 0 :(得分:4)
首先,您需要通过CLLocationManager类来帮助您获取当前位置
CLLocationManager *locationManager = [[CLLocationManager alloc]init];
locationManager.delegate = self;
[locationManager startUpdatingLocation];
以下代表将帮助您获取更新的位置
-(void) locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation{
}
现在,您可以使用google place api搜索当前坐标附近的任何内容
NSString *url = [NSString stringWithFormat:@"https://maps.googleapis.com/maps/api/place/search/xml?location=%f,%f&radius=%.0f&types=%@&sensor=true&key=AIzaSyDIWlL",currentlatitude,currentlongitude,distanceinmeters,itemYouWantToSearch];
// here you have to use your own key and change the ivars according to your need.
现在您必须使用NSXMLParser来解析数据
NSXMLParser *itemParser = [[NSXMLParser alloc]initWithContentsOfURL:[NSURL URLWithString:url]];
[itemParser setDelegate:self];
[itemParser parse];
以下解析器委托将帮助您获取数据
-(void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary *)attributeDict
{
//opening tag
}
-(void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)string{
//data of opening tag
}
-(void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName{
//closing tag
}
答案 1 :(得分:0)
首先,您必须阅读有关XMLParsing,JSON Parsing的所有内容。 当您将学习有关解析的所有内容时,请转到下一步,这是API。查找网址 在互联网上提供ATM的详细信息...我建议你在ATM之前你应该使用谷歌的天气API ...这对初学者来说很容易。