Как запрограммировать пользовательское информационное окно программно в Android

Я использую пользовательские данные окна, однако, вызывая marker.showInfoWindow (); Всегда отображает информацию о окне по умолчанию, а если пользователь нажимает на маркер, пользовательская информация о окне отображается без проблем. Могу ли я программно открыть информацию о моем пользовательском окне?

Мое дело в том, что когда маркеры рисуются на карте, один конкретный маркер должен отображать информацию о своем окне (так что не взаимодействовать с пользователем), но предпочтительно пользовательский, как это определено в моем классе CustomWindowInfoAdapter.


EDIT, с удовольствием удалил бы этот вопрос, это был просто я неуклюжий, но, возможно, таких парней, как я, там больше. В любом случае, моя проблема заключалась в том, что я вызывал showInfoWindow перед добавлением адаптера в свой метод resourceRepresentationsNearBy () , поэтому очевидно, что возможно только информационное окно по умолчанию. Итак, мой код ошибки:

private void setUpMap() { ... // Add search result markers to the map. resourceRepresentationsNearBy(); // Setting up custom info window mMap.setInfoWindowAdapter(new CustomInfoWindowAdapter()); ... } 

Где as, исправленный код:

  private void setUpMap() { ... // Setting up custom info window mMap.setInfoWindowAdapter(new CustomInfoWindowAdapter()); // Add search result markers to the map. resourceRepresentationsNearBy(); ... } 

Попробуй это:

 private static GoogleMap _googleMap = null; ... public static void initialize_google_map() { _googleMap = ((MapFragment)Context.getFragmentManager().findFragmentById(R.id.map)).getMap(); ... _googleMap.setInfoWindowAdapter(new GoogleMap.InfoWindowAdapter() { @Override public View getInfoWindow(Marker marker) { return build_info_window(marker); } @Override public View getInfoContents(Marker arg0) {return null;} }); } private static View build_info_window(Marker marker) { LayoutInflater inflater = (LayoutInflater)Context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); View custom_info_window = inflater.inflate(R.layout.custom_info_window, null); TextView tv_title = (TextView)custom_info_window.findViewById(R.id.tv_title); tv_title.setText("Title"); etc... etc... } 

}

Надеюсь, поможет.