@SuppressLint("InflateParams") @Override protected void createLayers() { super.createLayers(); // View overlays final LayoutInflater inflater = LayoutInflater.from(this); for (final DummyContent.DummyItem item : DummyContent.ITEMS) { final Button button = (Button) inflater.inflate(R.layout.pointer_bubble, null); button.setText(item.text); button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Toast.makeText(ViewOverlayViewer.this, item.text, Toast.LENGTH_SHORT).show(); } }); this.mapView.addView(button, new MapView.LayoutParams(MapView.LayoutParams.WRAP_CONTENT, MapView.LayoutParams.WRAP_CONTENT, item.location, MapView.LayoutParams.Alignment.BOTTOM_CENTER)); } } }
@Override protected ViewGroup.LayoutParams generateLayoutParams(ViewGroup.LayoutParams p) { return new MapView.LayoutParams(p); }
@Override public ViewGroup.LayoutParams generateLayoutParams(AttributeSet attrs) { return new MapView.LayoutParams(getContext(), attrs); }
@Override protected ViewGroup.LayoutParams generateDefaultLayoutParams() { return new MapView.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT, null, MapView.LayoutParams.Alignment.BOTTOM_CENTER); }