这是我的公共View onCreateView方法。我想在用户长按地图时打开对话框窗口,然后从对话框中获取数据,然后根据用户输入到对话框中的数据设置.tittle。我尝试使用接口进行操作,但是在需要时它不会包含数据。 getInput()是我要从Dialog片段接收数据的地方。
mMap.setOnMapLongClickListener(new GoogleMap.OnMapLongClickListener() {
@Override
public void onMapLongClick(LatLng latLng) {
//FragmentManager fm = getActivity().getSupportFragmentManager();
DialogMap dial = new DialogMap();
dial.setTargetFragment(MapFragment.this, 1);
dial.show(getFragmentManager(), "Add a catch");
mMap.addMarker(new MarkerOptions()
.position(latLng)
.title(getinput())
.snippet("Your marker snippet")
.icon(BitmapDescriptorFactory.fromResource(R.drawable.fish_icon_map)));
这是我对话框的片段。
答案 0 :(得分:0)
您错过了DialogMap中对话框监听器的初始化。
public onDialogOk对话框。 (您必须先使用它初始化)
dialog = (onDialogOk)getTargetFragment()
因此,在onCreateView()内部,可以对其进行初始化。