即時建立一個應用程序在IOS中,它有一個UITextView
用戶輸入類似他的地址,但沒有整個,谷歌應該預測並完成地址,我已經有一個谷歌的鑰匙,請幫我執行這一點,我無法理解如何如何在UitextView中集成谷歌地點搜索器?
0
A
回答
0
首先,您必須從- (void)textViewDidChange:(UITextView *)textView
委託方法獲取更新文本。然後使用谷歌地圖SDK搜索最匹配的位置。
- (void)textViewDidChange:(UITextView *)textView {
[self searchLocationWithText:textView.text];
}
- (void)searchLocationWithText:(NSString *)searchText
{
NSString *url = [NSString stringWithFormat:@"https://maps.googleapis.com/maps/api/place/textsearch/json?query=%@&key=%@", searchText, kGoogleSDKBrowserKey];
NSURL *googleRequestURL = [NSURL URLWithString:url];
// Retrieve the results of the URL.
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
NSData *data = [NSData dataWithContentsOfURL:googleRequestURL];
NSError *error = nil;
NSDictionary *json = [NSJSONSerialization JSONObjectWithData:data options:kNilOptions error:&error];
if ([[json objectForKey:@"status"] isEqualToString:@"OK"]) {
NSArray *locations = [json objectForKey:@"results"];
NSDictionary *place = [locations firstObject];
NSString *locationName = [place objectForKey:@"name"];
// Set location name to your textView
textView.text = locationName;
}
});
}
這裏kGoogleSDKBrowserKey是您註冊的API密鑰。另請參閱how to register for Google Places
0
你將不得不實施UITextFieldDelegate
, 在textField:shouldChangeCharactersInRange:replacementString
方法,你應該有這樣的事情:
-(BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
{
NSString *substring = [NSString stringWithString:textField.text];
substring = [substring stringByReplacingCharactersInRange:range withString:string];
substring = [substring stringByReplacingOccurrencesOfString:@" " withString:@""];
// your code to send the search string to google place API
return YES;
}
當你的搜索請求,谷歌的地方API完成後不要忘記重新加載您的UITableView的數據使用:[yourTable reloadData]
希望這會有所幫助。
乾杯。
相關問題
- 1. 谷歌搜索集成
- 2. 谷歌地圖搜索地點
- 3. 集成谷歌搜索網站
- 4. 與谷歌搜索結果集成
- 5. 如何在Android中將自動填充搜索與谷歌地圖集成?
- 6. Foursquare地點搜索/谷歌地圖搜索
- 7. 谷歌本地搜索API
- 8. 谷歌地球API搜索
- 9. 如何將谷歌地圖添加到谷歌搜索結果?
- 10. 集成 - 谷歌酒店搜索器 - 網絡應用程序
- 11. 如何生成谷歌地圖搜索結果的鏈接
- 12. django,谷歌地圖集成
- 13. Drupal谷歌地圖集成
- 14. 谷歌地圖集成
- 15. 如何實現像谷歌地圖搜索一樣的搜索?
- 16. 在谷歌搜索
- 17. 將谷歌地圖中的「我的地圖」集成到網站中,並使地點可搜索
- 18. 谷歌地圖搜索輸出谷歌地圖的搜索whisperingrer的國家
- 19. 如何添加事件addListener點擊標記後搜索地點谷歌地圖
- 20. 附近在谷歌地圖上搜索
- 21. 如何使用uitextfield搜索谷歌地圖中的地方sdk
- 22. 檢索在谷歌搜索
- 23. 如何在谷歌地圖api2中搜索街道
- 24. 谷歌地圖本地服務搜索
- 25. 如何在谷歌自動完成地圖搜索中處理TypeError:place.address_components [2]?
- 26. 如何集中大型搜索文本字段,如谷歌?
- 27. 從谷歌地圖搜索中刪除谷歌廣告
- 28. 如何在谷歌搜索JavaScript文件?
- 29. 如何在谷歌搜索位置圖
- 30. 谷歌地圖API中的搜索框 - 與信息數據庫鏈接集成
[如何設置谷歌將自動完成請求置於iOS中的UITextField](http://stackoverflow.com/questions/13005494/how-to-set-the-google-places-autocomplete -requests-to-a-uitextfield-in-ios) –
或者你也可以使用這個https://github.com/mrugrajsinh/MVAutocompletePlaceSearchTextField –