用戶可以通過Android Studio的Google地圖更改標記的標題嗎?讓用戶在Android Studio中的Google地圖上更改標記的標題
0
A
回答
1
您可以使用文本框創建對話框來介紹名稱。覆蓋標記的onClick並在此事件中打開對話框。使這個對話框更改標記標題。
在公共無效onMapReady(GoogleMap的GoogleMap的)添加這個
mMap.setOnMarkerClickListener(new GoogleMap.OnMarkerClickListener() {
@Override
public boolean onMarkerClick(Marker marker)
EditarMark editarMark = EditarMark.newInstance(marker.getTitle());
editarMark.show(getSupportFragmentManager(), "dialog");
return false;
}
});
這裏的對話框:
public class EditarMark extends DialogFragment {
private static final String MARKER="title";
public static EditarMark newInstance(String title) {
EditarMark frag = new EditarMark();
Bundle args = new Bundle();
args.putString(MARKER, title);
frag.setArguments(args);
return frag;
}
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
LayoutInflater inflater = getActivity().getLayoutInflater();
final View dialogView = inflater.inflate(R.layout.dialog_marks, null);
final String markerTitle= getArguments().getString(
final EditText etTitle= (EditText) dialogView.findViewById(R.id.etTitle);
final AlertDialog dialogAlert= new AlertDialog.Builder(getActivity())
.setTitle("Change marker's title")
.setView(dialogView)
.setPositiveButton("Ok",null)
.setNegativeButton("Cancel",null)
.create();
dialogAlert.setOnShowListener(new DialogInterface.OnShowListener() {
@Override
public void onShow(DialogInterface dialog) {
Button positive=dialogAlert.getButton(AlertDialog.BUTTON_POSITIVE);
Button negative=dialogAlert.getButton(AlertDialog.BUTTON_NEGATIVE);
positive.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
((YourMapActivity)getActivity()).doChangeTitle(etTitle.getText());
dialogAlert.dismiss();
}
});
negative.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
dialogAlert.dismiss();
}
});
}
});
return dialogAlert;
}
}
然後添加到您的主代碼:
public void doChangeTitle(String title) {
marker.setTitle(title)
}
我相信它可以改進,但它應該工作。
-1
public class MainActivity extends FragmentActivity
implements OnMapReadyCallback {
...
@Override public void onMapReady(GoogleMap map) {
map.addMarker(new MarkerOptions()
.position(new LatLng(10, 10))
.title("Hello world"));
}
}
+3
請給你的答案添加一些解釋。在SO上不鼓勵使用僅有代碼的答案。謝謝。 –
相關問題
- 1. 更改Google地圖標記的圖標
- 2. 在Android上的Google地圖中更改標記
- 3. 更改Google地圖標記上的標題
- 4. 更改Google地圖標記
- 5. Android自動標題在Google地圖上的紅色標記
- 6. 如何更改Google地圖標記上的圖標
- 7. Google地圖標記標題android
- 8. 在Google地圖應用程序中更改標記圖標
- 9. 更改Google地圖上的可拖動標記光標
- 10. Google地圖標記圖標與不同地方的更改
- 11. Google地圖上的文本框值更改更新標記
- 12. 點擊其他地圖時更改Google地圖標記圖標
- 13. 更改Google地圖的選定標記或更改標記的顏色? [iOS的]
- 14. Rails如何更改Google地圖標記?
- 15. 如何更改Google地圖上所有地塊的標記圖標?
- 16. 更改google地圖標記顏色
- 17. 無法從PHP文件更改Google地圖標記的圖標
- 18. 將GeoPoint解析爲Google地圖上的標記Android Studio
- 19. Javascript,更改google地圖標記顏色
- 20. 更改Google地圖標記檢查
- 21. Android Google地圖標記運動問題
- 22. 更改地圖標記的位圖
- 23. Google地圖和地圖上的標記
- 24. android + Google地圖標記
- 25. Android中的Google地圖標記羣集
- 26. 在地圖上更改Google標題的位置
- 27. 更改android google地圖的標記邊界
- 28. 更改標記的顏色 - Google地圖V2 Android
- 29. Google地圖標記
- 30. Google地圖標記圖標自動更改
謝謝。如果您添加了代碼,我認爲這會很有幫助。 – Michal
我編輯過它。我稍後可能會在android studio中再次編輯它。 –
我管理它,謝謝。 – Michal