Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
slavak7878
0 / 0 / 0
Регистрация: 16.05.2016
Сообщений: 10
#1

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

16.05.2016, 19:54. Просмотров 295. Ответов 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 минут
Похоже как всегда придется самому разбираться. Всем спасибо!!!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.05.2016, 19:54
Здравствуйте! Я подобрал для вас темы с ответами на вопрос MapView в CardView RecyclerAdapter (Программирование Android):

CardView - Программирование Android
Не получается закрасить по краям СardView. Результат на изображении. Может кто сталкивался с таким? Как решить? &lt;?xml version=&quot;1.0&quot;...

Нажатие на CardView - Программирование Android
Всем привет. Вроде вопрос простой, но найти ответа не могу на него. Есть Активити, в нем несколько CardView. Хочется по нажатию данных...

Recycle/CardView NullPointerException - Программирование Android
(card_view_address)- &lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt; &lt;LinearLayout xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot; ...

Выравнять текст в CardView - Программирование Android
Есть у меня значит CardView в нем несколько LinearLayout Хочу что бы название предметов было ровно в центре друг под другом, но его все...

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

Реализация PopupMenu в элементе CardView - Программирование Android
Всем привет! Нужна помощь в реализации одного момента. Есть CardView, и в каждом элементе выпадающее меню (типа контекстного) с...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
YuraAAA
1571 / 1313 / 270
Регистрация: 25.10.2009
Сообщений: 3,433
Записей в блоге: 2
17.05.2016, 00:16 #2
slavak7878, попробуйте map:liteMode="true" в xml добавить карте
slavak7878
0 / 0 / 0
Регистрация: 16.05.2016
Сообщений: 10
17.05.2016, 06:52  [ТС] #3
Теперь вместо серого квадратика голубой
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.05.2016, 06:52
Привет! Вот еще темы с ответами:

Обрезается bottom border у CardView на LinearLayout - Программирование Android
Почему если обвернуть CardView LinearLayout`ом то у него срезается border? &lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt; &lt;LinearLayout...

Маркер по центру MapView googleMap - Программирование Android
В некоторых приложениях есть возможность на карте указать свое местоположение. там реализовано так: 1) в центре карты расположен не...

MapView. API Key2. Карта не отображается - Программирование Android
Здравия всяк сюда входящему! Тема - Освоение картографии на Android. Reverse Geocding. IDE - Eclipse Version: 4.2.1.v20130118-173121...

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


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

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

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