【发布时间】:2016-06-07 11:11:54
【问题描述】:
我正在我的项目上创建一个带有导航抽屉的活动(扩展 AppCompatActivity),用于在多个片段之间切换,其中一个是带有 MapView 实现的 MapFragment(扩展片段)。 我想在 MapFragment 类中调用 Google 提供的 AutoComplete Widget。
这是我在 MapFragment 类中的代码
PlaceAutocompleteFragment autocompleteFragment = (PlaceAutocompleteFragment)
getFragmentManager().findFragmentById(R.id.place_autocomplete_fragment);
AutocompleteFilter typeFilter = new AutocompleteFilter.Builder()
.setTypeFilter(AutocompleteFilter.TYPE_FILTER_ADDRESS)
.build();
autocompleteFragment.setFilter(typeFilter);
autocompleteFragment.setOnPlaceSelectedListener(new PlaceSelectionListener() {
@Override
public void onPlaceSelected(Place place) {
// TODO: Get info about the selected place.
String placeDetailsStr = place.getName() + "\n"
+ place.getId() + "\n"
+ place.getLatLng().toString() + "\n"
+ place.getAddress() + "\n"
+ place.getAttributions();
Log.i("OnPlaceSelected", placeDetailsStr);
map.moveCamera(CameraUpdateFactory.newLatLngZoom(place.getLatLng(), 15));
}
@Override
public void onError(Status status) {
// TODO: Handle the error.
Log.i("OnPlaceSelected", "An error occurred: " + status);
}
});
语法错误发生在
PlaceAutocompleteFragment autocompleteFragment = (PlaceAutocompleteFragment) getFragmentManager().findFragmentById(R.id.place_autocomplete_fragment);
说过
不可转换的类型;无法将“android.support.v4.app.Fragment”转换为“com.google.android.gms.location.places.ui.PlaceAutocompleteFragment”
但是当我将这组代码放在 MainActivity 中时,它工作得很好。 所以我想知道是否有任何方法可以在 Fragment 中调用 AutoComplete 小部件。
任何答案将不胜感激。 :)
【问题讨论】:
标签: java android-fragments autocomplete widget