单击它时,多个 PlaceAutoCompleteFragment 会很快打开
Multiple PlaceAutoCompleteFragment opens when clicked on it very quickly
我在最近的一个项目中使用了 Google 的 PlaceAutoCompleteFragment。当我快速单击 PlaceAutoCompleteFragment 时,它会在我的应用程序上打开多个叠加层,这真的很烦人。如何防止它打开多个叠加层?我的片段代码如下:
if (autocompleteFragment == null) {
autocompleteFragment = (PlaceAutocompleteFragment)getFragmentManager().findFragmentById(R.id.place_autocompletehome_fragment);
}
autocompleteFragment.setOnPlaceSelectedListener(new PlaceSelectionListener() {
@Override
public void onPlaceSelected(Place place) {
// TODO: Get info about the selected place.
try {
Log.i("esty", "Place: " + place.getName());
} catch (Exception e) {
Log.e("esty", "Error: " + e.getMessage());
}
}
@Override
public void onError(Status status) {
// TODO: Handle the error.
Log.e("esty", "An error occurred: " + status);
}
});
看起来这是 PlaceAutocompleteFragment (and SupportPlaceAutocompleteFragment 中的错误。感谢您提请我们注意。我们会在即将发布的版本中解决这个问题。
你为什么不尝试破解来解决这个问题。
在整个片段上放置一个点击监听器,并使用多点击拦截器来传递一次点击事件。
参考以下解决方案:
我在最近的一个项目中使用了 Google 的 PlaceAutoCompleteFragment。当我快速单击 PlaceAutoCompleteFragment 时,它会在我的应用程序上打开多个叠加层,这真的很烦人。如何防止它打开多个叠加层?我的片段代码如下:
if (autocompleteFragment == null) {
autocompleteFragment = (PlaceAutocompleteFragment)getFragmentManager().findFragmentById(R.id.place_autocompletehome_fragment);
}
autocompleteFragment.setOnPlaceSelectedListener(new PlaceSelectionListener() {
@Override
public void onPlaceSelected(Place place) {
// TODO: Get info about the selected place.
try {
Log.i("esty", "Place: " + place.getName());
} catch (Exception e) {
Log.e("esty", "Error: " + e.getMessage());
}
}
@Override
public void onError(Status status) {
// TODO: Handle the error.
Log.e("esty", "An error occurred: " + status);
}
});
看起来这是 PlaceAutocompleteFragment (and SupportPlaceAutocompleteFragment 中的错误。感谢您提请我们注意。我们会在即将发布的版本中解决这个问题。
你为什么不尝试破解来解决这个问题。 在整个片段上放置一个点击监听器,并使用多点击拦截器来传递一次点击事件。
参考以下解决方案: