让用户在Android Studio中的Google Maps中更改标记的标题

姆兹米洛夫斯基

用户可以通过任何方式在Android Studio的Google Maps中更改标记的标题吗?

阿卜杜勒拉·艾萨维(Abdelilah El Aissaoui)

您可以创建一个带有文本框的对话框以引入名称。覆盖标记的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)
}

我敢肯定它可以改进,但是应该可以。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在Google Maps Android中动态更新标记

来自分类Dev

Android Studio中的Google Maps API问题

来自分类Dev

如何在移动 android studio google maps 中查看谷歌地图中的其他标记

来自分类Dev

更改Google Maps方向中的单个标记

来自分类Dev

JavaScript Google Maps API-更改标记的标题

来自分类Dev

Android Google Maps,如何在标记中添加链接

来自分类Dev

标记图标中的Android Google Maps API字符串

来自分类Dev

标记图标中的Android Google Maps API字符串

来自分类Dev

具有Google Maps API的Android中的MKMapView标题功能?

来自分类Dev

文本到语音 - Android Studio 中的 Google 地图和标记

来自分类Dev

Android中的用户会话

来自分类Dev

如何在Android Studio中设置Google Maps Utility Api?

来自分类Dev

将标题更改为锚标记中的数据标题?

来自分类Dev

如何在vue-google-maps中更改标记图标

来自分类Dev

如何在vue-google-maps中更改标记图标

来自分类Dev

最终如何在Google Maps API中更改标记位置?

来自分类Dev

如何在Android Studio中更改Google Analytics(分析)帐户

来自分类Dev

Android Studio中的Google Calendar API

来自分类Dev

无法登录Android Studio中的Google帐户

来自分类Dev

更改OnMylocationButtonClick在Google Maps v2 Android中缩放

来自分类Dev

在Android中更改Google Maps填充时,保持位置居中

来自分类Dev

在Android GoogleMaps中更改标记的文本

来自分类Dev

在android中更改导航栏标题颜色

来自分类Dev

在android中更改工具栏标题

来自分类Dev

在Android中检测用户活动

来自分类Dev

在android中查找用户位置

来自分类Dev

Android中的用户会话管理

来自分类Dev

在 Android 中存储用户令牌

来自分类Dev

将Google地图标记保存到Android Studio中的SharedPreferences中

Related 相关文章

热门标签

归档