В моем приложении у меня есть информационное окно на маркере на карте, например, на изображении ниже.Android: Info Window input
Я бы добавил кнопку или флажок в информационном окне.
Есть способ добавить входной объект в информационное окно?
В моем приложении у меня есть информационное окно на маркере на карте, например, на изображении ниже.Android: Info Window input
Я бы добавил кнопку или флажок в информационном окне.
Есть способ добавить входной объект в информационное окно?
Есть способ добавить входной объект в информационное окно?
Нет. Информационное окно представляет собой растровое изображение. Это растровое изображение, созданное из файла макета, но оно по-прежнему является растровым изображением. Вы можете поместить интерактивный виджет в макет информационного окна, но он не будет реагировать на ввод пользователя.
Вы можете обнаружить, когда пользователь заходит в информационное окно и отображает всплывающее окно, содержащее интерактивные виджеты (например, диалог).
ок спасибо много, отличная идея. Я сделаю это :) – Jay
Как я могу добавить listener в окне информации? – Jay
@Jay: См. Ответ Габриэля ниже. Вы определяете 'OnMarkerClickListener' и регистрируете его с помощью' GoogleMap' через 'setOnMarkerClickListener()'. – CommonsWare
Вам нужно скрыть нормальную инфузию, а затем на маркерном щелчке показать свое окно, возможно, AlertDialog с вашим расположением.
не забудьте вернуть true; чтобы скрыть нормальный InfoWindow
GoogleMap.OnMarkerClickListener onMarkerClickListener = new GoogleMap.OnMarkerClickListener(){
@Override
public boolean onMarkerClick(Marker marker) {
//open your window
//For Example
final AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
builder.setMessage("Hey ive done my infowindow").setTitle("My own infowindow");
builder.setPositiveButton("Ok", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id)
dialog.dismiss();
}
});
AlertDialog dialog = builder.create();
dialog.show();
return true; //RETURNING TRUE going to hide normal infowindow
}
};
googleMap.setOnMarkerClickListener(onMarkerClickListener);
взглянуть на этот ответ в этой должности и попытаться сделать то же самое [пользовательские окна макета маркер] (http://stackoverflow.com/a/15091202/2267302) – rojiTOCH