Как и в названии, у меня возникла эта проблема, и я искал примерно 2 часа для ответа, но ни один из тех, которые я пробовал, не работал; /
Вот класс:
package com.example.michalwolowiec.meetup;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.ImageView;
import android.widget.TextView;
import com.google.android.gms.maps.GoogleMap;
import com.google.android.gms.maps.model.Marker;
import java.util.ArrayList;
public class MeetUpInfoWindowAdapter implements GoogleMap.InfoWindowAdapter {
private final View mWindow;
private Context context;
private ArrayList<User> users;
public MeetUpInfoWindowAdapter(Context context, ArrayList<User> users) {
this.context = context;
this.users = users;
mWindow = LayoutInflater.from(context).inflate(R.layout.event_info_window, null);
}
private void renderWindowInfo(Marker marker, View view){
String title = marker.getTitle();
TextView titleTextView = view.findViewById(R.id.titleTextView);
if(!title.equals("")) titleTextView.setText(title);
String snippet = marker.getSnippet();
TextView snippetTextView = view.findViewById(R.id.snippetTextView);
if(!title.equals("")) snippetTextView.setText(snippet);
//Since markers doesn't have an extra Variable to store images I need to iterate
//through all users to get the porper photo
int photo = 0;
ImageView photoImageView = view.findViewById(R.id.photoImageView);
for(int i = 0; i < users.size(); i++){
User user = users.get(i);
if(title.equals("Username: " + user.getUsername())){
photo = user.getProfilePhoto();
break;
}
}
if(photo!=0)
photoImageView.setImageDrawable(context.getResources().getDrawable(photo));
}
@Override
public View getInfoWindow(Marker marker) {
renderWindowInfo(marker, mWindow);
return mWindow;
}
@Override
public View getInfoContents(Marker marker) {
renderWindowInfo(marker, mWindow);
return mWindow;
}
}
Лично я не думаю, что я использую что-то, что устарело.Даже IDE не кричит, что я такой.
Вот мои зависимости:
dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation 'com.android.support.constraint:constraint-layout:1.1.3'
implementation 'com.jakewharton:butterknife:9.0.0-rc1'
implementation 'com.google.android.gms:play-services-maps:16.0.0'
annotationProcessor 'com.jakewharton:butterknife-compiler:9.0.0-rc1'
implementation 'com.google.android.gms:play-services-location:16.0.0'
implementation 'com.github.david-serrano:locationprovider:1.1'
implementation 'com.android.support:design:28.0.0'
implementation 'com.android.support:support-v4:28.0.0'
implementation 'com.android.support:support-media-compat:28.0.0'
implementation 'com.android.support:appcompat-v7:28.0.0'
compileOnly 'org.projectlombok:lombok:1.18.4'
annotationProcessor 'org.projectlombok:lombok:1.18.4'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
}
Мне пришлось добавить
реализация 'com.android.support: support-v4: 28.0.0 '
, потому что я думаю, что библиотека, которую я использую для определения местоположения, использует ее.КСТАТИ.Поскольку я еще не разработчик, вы, ребята, порекомендуете хорошую библиотеку локаций для Android?
Заранее спасибо