0

我不知道如何获取结果,只有附近的公交车站。我试图 通过地点选择器文档寻求帮助。但它显示了附近的所有地方,如果我只需要公交车站该怎么办。它返回所有附近的地方如何只得到我想要的

import android.Manifest;
import android.content.Intent;
import android.content.IntentSender;
import android.content.pm.PackageManager;
import android.location.Location;

import com.google.android.gms.common.GooglePlayServicesNotAvailableException;
import com.google.android.gms.common.GooglePlayServicesRepairableException;

import android.os.Bundle;
import android.support.v4.app.FragmentActivity;
import android.widget.Toast;

import com.google.android.gms.location.places.Place;
import com.google.android.gms.location.places.ui.PlacePicker;
import com.google.android.gms.maps.model.LatLngBounds;

import transportation.lumiumdesign.com.transportation.R;

/**
 * 
 * It contains a place picker to detect current location and nearby bus stops to it.
 */

public class CurrentLocMap extends FragmentActivity {

    int PLACE_PICKER_REQUEST = 1;//Predefined req_code

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.current_loc_map);

        PlacePicker.IntentBuilder builder = new PlacePicker.IntentBuilder();

/**        Intent Builder will set current location of deviceif not provided
 **/
        try {
            startActivityForResult(builder.build(this), PLACE_PICKER_REQUEST);
        } catch (GooglePlayServicesRepairableException e) {
            e.printStackTrace();
        } catch (GooglePlayServicesNotAvailableException e) {
            e.printStackTrace();
        }
    }

    //onActivityResult will launch place picker
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        if (requestCode == PLACE_PICKER_REQUEST) {
            if (resultCode == RESULT_OK) {
                Place place = PlacePicker.getPlace(this, data);

                String toastMsg = String.format("Place: %s", place.getName());
                Toast.makeText(this, toastMsg, Toast.LENGTH_LONG).show();
            }
        }
    }

}
4

1 回答 1

0

不幸的是,即使像nowavewater测试的那样扩展 Place Picker 类,也无法进行过滤。

您还可以关注这两个未解决的问题,以获取 sidecarcat共享的更新:

但你可以尝试使用,放置自动完成

Android 版 Google Places API 中的自动完成服务返回地点预测以响应用户搜索查询。当用户键入时,自动完成服务会返回有关地点的建议,例如企业、地址和兴趣点。

限制自动完成结果

您可以设置自动完成小部件以将结果偏向特定地理区域,和/或将结果过滤到一种或多种地点类型。

要将自动填充结果过滤到特定地点类型,请调用AutocompleteFilter.Builder创建一个新的AutocompleteFilter,调用setTypeFilter()以设置要使用的过滤器。然后,将过滤器传递给片段或意图。

代码示例:

AutocompleteFilter typeFilter = new AutocompleteFilter.Builder()
.setTypeFilter(AutocompleteFilter.TYPE_FILTER_ADDRESS)
.build();

Intent intent =
new PlaceAutocomplete.IntentBuilder(PlaceAutocomplete.MODE_FULLSCREEN)
.setFilter(typeFilter)
.build(this);
于 2016-06-25T18:58:34.097 回答