Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
slavak7878
0 / 0 / 0
Регистрация: 16.05.2016
Сообщений: 16
#1

MapView в CardView RecyclerAdapter - Программирование Android

16.05.2016, 19:54. Просмотров 553. Ответов 2
Метки нет (Все метки)

Добрый день! Необходимо отобразить карту Google в CardView. Отображается только сетка, маркер и кнопки масштаба. Можно нажать только на маркер, после чего высветится title. После нажатия происходит подгрузка карты, и то не вся. Передвинуть карту возможности нет. Причем если вообще закомментировать строки с 34 по 39 в RecyclerAdapter2.java, то отобразится серый квадрат карты с надписью Google и все! Пример из Google Android Maps API (с фрагментом) в моем проекте работает без проблем! Помогите пожалуйста, неделю бьюсь!


AndroidManifest.xml
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.НАЗВАНИЕ ПРОЕКТА">
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
    <uses-permission
        android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <uses-permission
        android:name="android.permission.READ_EXTERNAL_STORAGE" />
 
<application...
<meta-data
            android:name="com.google.android.gms.version"
            android:value="@integer/google_play_services_version" />
 
        <meta-data
            android:name="com.google.android.geo.API_KEY"
            android:value="МОЙ КЛЮЧ" />
</application>
 
</manifest>
RecyclerAdapter2.java:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
public class RecyclerAdapter2 extends RecyclerView.Adapter<RecyclerAdapter2.ViewHolder>
{
 private List<Person2> mDataset;
    GoogleMap mMap;
    public static class ViewHolder extends RecyclerView.ViewHolder {
public MapView mp;
 public ViewHolder(View v) {
            super(v);
public android.support.v7.widget.CardView mCardView;
mp = (MapView) v.findViewById(R.id.map1);
}
}
 
public RecyclerAdapter2(List<Person2> dataset) {
        mDataset = dataset;
    }
 
    @Override
    public RecyclerAdapter2.ViewHolder onCreateViewHolder(ViewGroup parent,
                                                          int viewType) {
           View v = LayoutInflater.from(parent.getContext())
                    .inflate(R.layout.recycler_item2, parent, false);
        ViewHolder vh = new ViewHolder(v);
        return vh;
    }
 
@Override
    public void onBindViewHolder(final ViewHolder holder, int position) {
 holder.mp.onCreate(null);
        holder.mp.getMapAsync(new OnMapReadyCallback() {
            @Override
            public void onMapReady(GoogleMap googleMap) {
                    mMap = googleMap;
mMap.getUiSettings().setZoomControlsEnabled(true);
                double lat1 = Double.parseDouble(lat);
                double lng1 = Double.parseDouble(lng);
                LatLng sydney = new LatLng(lat1, lng1);
                mMap.addMarker(new MarkerOptions().position(sydney).title("Marker in Sydney"));
                mMap.moveCamera(CameraUpdateFactory.newLatLng(sydney));
                }
        });
}
}
recycler_item2.xml:
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    xmlns:map="http://schemas.android.com/apk/res-auto"
    android:orientation="vertical">
 
 
 
    <android.support.v7.widget.CardView
        android:id="@+id/card_view2"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginLeft="5dp"
        android:layout_marginTop="5dp"
        android:layout_marginRight="5dp">
 
 
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="vertical"
            android:background="#FFFFFF">
 
            <com.google.android.gms.maps.MapView xmlns:android="http://schemas.android.com/apk/res/android"
                android:id="@+id/map1"
                android:layout_width="match_parent"
                map:mapType="normal"
                map:cameraZoom="16"
                android:layout_height="300dp" />
 
 
 
        </LinearLayout>
 
 
    </android.support.v7.widget.CardView>
 
 
</LinearLayout>
Добавлено через 9 часов 35 минут
Похоже как всегда придется самому разбираться. Всем спасибо!!!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.05.2016, 19:54
Я подобрал для вас темы с готовыми решениями и ответами на вопрос MapView в CardView RecyclerAdapter (Программирование Android):

CardView
Не получается закрасить по краям СardView. Результат на изображении. Может кто...

Нажатие на CardView
Всем привет. Вроде вопрос простой, но найти ответа не могу на него. Есть...

Маркер по центру MapView googleMap
В некоторых приложениях есть возможность на карте указать свое местоположение....

Recycle/CardView NullPointerException
(card_view_address)- &lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt; &lt;LinearLayout...

Выравнять текст в CardView
Есть у меня значит CardView в нем несколько LinearLayout Хочу что бы название...

CardView и серая линия :)?
Есть recycleview и cartview. Вопрос в следующем как удали серую линию (можете...

2
YuraAAA
1578 / 1319 / 282
Регистрация: 25.10.2009
Сообщений: 3,436
Записей в блоге: 2
17.05.2016, 00:16 #2
slavak7878, попробуйте map:liteMode="true" в xml добавить карте
0
slavak7878
0 / 0 / 0
Регистрация: 16.05.2016
Сообщений: 16
17.05.2016, 06:52  [ТС] #3
Теперь вместо серого квадратика голубой
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.05.2016, 06:52
Привет! Вот еще темы с решениями:

Не получается компоновка CardView
Добрый день. Никак не могу правильно задать параметры чтобы получить нужную...

MapView. API Key2. Карта не отображается
Здравия всяк сюда входящему! Тема - Освоение картографии на Android. Reverse...

Подскажите по MapView (событие загрузки карты)
Здравствуйте! Может тут кто знает, как перехватить событие загрузки карты? Т.е....

CardView округление вложенных элементов
Разметка &lt;android.support.v7.widget.CardView android:id=&quot;@+id/cardView&quot;...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru