Могу ли я добавить виды на оверлеи на картах Android? - PullRequest
0 голосов
/ 16 мая 2011

Есть ли способ добавить виды на ItemizedOverlays в картах Android? Если есть способ, пожалуйста, скажите мне, как .. спасибо ..

Когда я нажимаю на маркер, я хочу отобразить его информацию с изображениями, текстом и кнопками. Я пробовал много ответов в этом сообществе, но все они не соответствуют моим требованиям. Поэтому я хочу добавить вид с изображениями, текстом и кнопками в оверлей, чтобы он работал хорошо даже при увеличении или перемещении карт.

Ответы [ 2 ]

1 голос
/ 16 мая 2011

Вы можете сделать это методом onTap.

   protected boolean onTap(final int index) {
    this.index=index;
    OverlayItem item = mOverlays.get(index);
    dialog = new AlertDialog.Builder(mContext);
    final AlertDialog dial=dialog.create();
    dial.show();
    dial.setContentView(R.layout.showoverlay);
    Window win=dial.getWindow();
    TextView tv=(TextView)win.findViewById(R.id.tvLayTitle);
    tv.setText(item.getSnippet());

    mBtnDel=(Button)win.findViewById(R.id.tvLayClose);
    mBtnView=(Button)win.findViewById(R.id.tvLayAction);
    mBtnView.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {

            Intent intent=new Intent(mContext,DetailProperty.class);
            intent.putIntegerArrayListExtra("detailId",mAlist);
            mContext.startActivity(intent);
            dial.dismiss();
        }
    });
    mBtnDel.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {

             dial.dismiss();
        }
    });

    return true;
}

При нажатии на кнопку просмотра просто вызовите свою активность с изображениями и кнопками .... Надеюсь, это будет полезно для вас ...

0 голосов
/ 26 июля 2011

Я делаю это:

1) Добавить вид карты в RelativeLayout
2) Добавьте представление, которое я хочу разместить поверх оверлея, в тот же RelativeLayout
3) Переопределите метод «Наложение» в Overlay (используя класс CustomOverlay, который расширяет Overlay). Внутри метода вызовите обработчик, который перемещает представление

...