大家好我在尝试使用googles搜索栏时遇到错误。说不能解决setOnPlaceSelectedListener。我正在使用这个过去24的库,这是我能在网上找到关于这个问题的唯一解决方案,所以现在我有点卡住了。 (编译' com.android.support:design:25.1.0')。我也使用这个xml代码,它没有给我任何错误。有什么建议吗?
XML:
<fragment
android:id="@+id/place_autocomplete_fragment"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:name="com.google.android.gms.location.places.ui.PlaceAutocompleteFragment"
/>
片段:
PlaceAutocompleteFragment autocompleteFragment = (PlaceAutocompleteFragment)
getFragmentManager().findFragmentById(R.id.place_autocomplete_fragment);
autocompleteFragment.setOnPlaceSelectedListener(new PlaceSelectionListener() {
@Override
public void onPlaceSelected(Place place) {
// TODO: Get info about the selected place.
Log.i(TAG, "Place: " + place.getName());
}
@Override
public void onError(Status status) {
// TODO: Handle the error.
Log.i(TAG, "An error occurred: " + status);
}
});
答案 0 :(得分:2)
我遇到了确切的问题,我花了很长时间才解决它。这是一个非常愚蠢的错误。对我来说,这是因为我在onCreate()方法之外放置了setOnPlaceSelectedListener()。如果您的问题与我的问题相同,那么这是一个非常简单的解决方法。只需将片段声明及其侦听器复制粘贴到onCreate()方法中即可。希望有所帮助。