Android 如何为2019年1月后更新的AutocompleteSupportFragment api设置过滤器
如何使用为AutocompleteSupportFragment autocomplete edittext place api设置国家/地区过滤器 AutocompleteFilter typeFilter=新的AutocompleteFilter.Builder().setCountry(“IN”).build() 不使用新发布的google api for place location for 自动完成支持片段 xml文件Android 如何为2019年1月后更新的AutocompleteSupportFragment api设置过滤器,android,google-places-api,Android,Google Places Api,如何使用为AutocompleteSupportFragment autocomplete edittext place api设置国家/地区过滤器 AutocompleteFilter typeFilter=新的AutocompleteFilter.Builder().setCountry(“IN”).build() 不使用新发布的google api for place location for 自动完成支持片段 xml文件 fragment android:id="
fragment
android:id="@+id/autocomplete_fragment"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:name="com.google.android.libraries.places.widget.AutocompleteSupportFragment"
java文件
AutocompleteSupportFragment autocompleteFragment = (AutocompleteSupportFragment)
getSupportFragmentManager().findFragmentById(R.id.autocomplete_fragment);
参考文件
位置自动完成实现可以使用Intent builder或Fragment完成
片段:
AutocompleteSupportFragment autocompleteFragment = (AutocompleteSupportFragment)
getSupportFragmentManager().findFragmentById(R.id.autocomplete_fragment);
autocompleteFragment.setCountry("IN"); //country type
autocompleteFragment.setPlaceFields(Arrays.asList(Place.Field.ID, Place.Field.NAME));
//to indicate the types of place data that you want to get.
Intent intent = new Autocomplete.IntentBuilder(
AutocompleteActivityMode.OVERLAY, fields)
.setTypeFilter(TypeFilter.CITIES)
.setCountry("IN")
.build(this);
startActivityForResult(intent, AUTOCOMPLETE_REQUEST_CODE);
IntentBuilder:
AutocompleteSupportFragment autocompleteFragment = (AutocompleteSupportFragment)
getSupportFragmentManager().findFragmentById(R.id.autocomplete_fragment);
autocompleteFragment.setCountry("IN"); //country type
autocompleteFragment.setPlaceFields(Arrays.asList(Place.Field.ID, Place.Field.NAME));
//to indicate the types of place data that you want to get.
Intent intent = new Autocomplete.IntentBuilder(
AutocompleteActivityMode.OVERLAY, fields)
.setTypeFilter(TypeFilter.CITIES)
.setCountry("IN")
.build(this);
startActivityForResult(intent, AUTOCOMPLETE_REQUEST_CODE);
使用以下命令:
autocompleteFragment.setCountry("IN");
textView without Intential它也很有用:
autocompleteFragment.setOnPlaceSelectedListener(new PlaceSelectionListener() {
@Override public void onPlaceSelected(Place place) {
txtVw.setText(place.getName()+" >> "+place.getLatLng());
}
@Override public void onError(Status status) {
txtVw.setText(status.toString());
}
}
);