Добавить предварительный просмотр камеры в качестве слоя для Mapview в Android

В настоящее время я работаю над приложением, которое содержит карту. в этом я хотел бы добавить мой предварительный просмотр камеры в качестве фона или слоя Mapview. Это означает, что все маркеры места показывают только один мой предварительный просмотр камеры. Как это, На самом деле концепция заключается в том, что, когда я открываю свою камеру, на ней показывается маркер рядом. поэтому, когда я нажимаю на этот маркер, он показывает всплывающее окно, которое содержит информацию о месте. как показано на рисунке. Как я могу реализовать это, пожалуйста. пожалуйста, дайте мне любую идею. Я попытался с предварительным просмотром камеры на фоне и просмотра карты на переднем плане и setAlpha(0); и удалить все слои на просмотре карты и так далее. ничего для меня. Пожалуйста, помогите мне найти решение. Заранее спасибо.

Обновить:

Вот как я добавил свой предварительный просмотр камеры:

 FrameLayout preview = (FrameLayout) findViewById(R.id.camera_preview);
    cameraSurfaceView = new CameraSurfaceView(this);
    preview.addView(cameraSurfaceView);

и вот как я должен добавить свой MapView:

<?xml version="1.0" encoding="utf-8"?>

<com.nutiteq.MapView
    android:id="@+id/mapView"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="@color/transparent_background" />

<FrameLayout
    android:id="@+id/camera_preview"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" />
        </RelativeLayout>


   mapView = (MapView) findViewById(R.id.mapView);

Я пытался mapView.setAlpha(0f); но это скрыть mapview вместе с маркером. ничего не мог видеть.

Я пытался установить

Canvas can =  new Canvas();
can.drawColor(0x7FFFFFFF);
mapView.draw(can);

но этот тоже не работает.

есть метод, который называется addLayer(); но я не знаю, как конвертировать мой предварительный просмотр камеры в качестве слоя.

3 ответа

Решение

Извините, я был совершенно неправ по своей концепции. Теперь все идет хорошо после изучения концепций дополненной реальности. сейчас я использую BeyondAR Agumented Reality SDK, введите описание ссылки здесь.

Я боюсь использовать Nutiteq MapView поверх других просмотров это невозможно. MapView основывается на GLSurfaceView Класс и его упорядочение по сравнению с другими представлениями ограничены - это может быть только самое нижнее представление. Это GLSurfaceView ограничение в Android.

Я не уверен, правильно ли я понял, вы хотите drawable из camera preview в качестве фона, не так ли?

Если это то, что вы хотите, то вы можете захватить или сделать скриншот camera preview Смотреть как это

# Build the Drawing Cache
view.buildDrawingCache();

# Create Bitmap
Bitmap cache = view.getDrawingCache();

# Save Bitmap
saveBitmap(cache);
view.destroyDrawingCache(); 

Тогда вы можете работать с этим снимком экрана, как вы хотите.

Я надеюсь, это может помочь вам.

С уважением

PS Я нашел эту информацию здесь, чтобы захватить достопримечательности моих просмотров, и с тех пор я часто использую ее.

Другие вопросы по тегам