Что я пытаюсь сделать, это получить изображения из базы данных и показать их в спискеView. для этого я использую один класс адаптера и списка элементов, но он не показывает никакого изображения, а одно строковое значение, переданное из основного вида деятельности в класс элементов, фактически адрес изображения, в котором он хранится в базе данных. Как этоКак показать изображения в спискеView с библиотекой Picasso с сервера?
Пожалуйста, не сделать его дубликат
http://howdysend.com/Howdy/uploads/6.png ... на самом деле это адрес изображения в базе данных и 6 является идентификатор изображения. Вот мой код
Основная деятельность
listEvents.setAdapter((ListAdapter) adapterNewsFeed);
adapterNewsFeed = new AdapterNewsFeed(getActivity(), R.layout.custom_events_list_in_newsfeed);
listEvents.setAdapter((ListAdapter) adapterNewsFeed);
try {
jsonObject = new JSONObject(json_string);
jsonArray = jsonObject.getJSONArray("server_response");
int count = 0;
String EventTitle, EventDate, FriendName,friend_id,image;
while (count < jsonArray.length()) {
JSONObject JO = jsonArray.getJSONObject(count);
friend_id=JO.getString("friend_id");
EventTitle = JO.getString("address");
EventDate = JO.getString("DOB");
FriendName = JO.getString("name");
image=("http://howdysend.com/Howdy/uploads/" + friend_id + ".png");
EventsElements eventsElements = new EventsElements(image,EventTitle, EventDate, FriendName);
adapterNewsFeed.add(eventsElements);
listEvents.setOnItemClickListener(new AdapterView.OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
EventsElements eventsElements =(EventsElements) adapterNewsFeed.getItem(position);
Intent i = new Intent(getActivity(), SendGreetings.class);
i.putExtra("user_id", eventsElements.getFriendName());
startActivity(i);
}
});
Элементы класса
public class EventsElements {
private String EventTitle, EventDate,FriendName;
public String image;
public EventsElements(String EventTitle,String EventDate,String FriendName, String image){
this.setEventTitle(EventTitle);
this.setEventDate(EventDate);
this.setFriendName(FriendName);
this.setImage(image);
}
public String getEventTitle(){
return EventTitle;
}
public void setEventTitle(String EventTitle) {
this.EventTitle = EventTitle;
}
public String getEventDate() {
return EventDate;
}
public void setEventDate(String EventDate) {
this.EventDate = EventDate;
}
public String getFriendName() {
return FriendName;
}
public void setFriendName(String FriendName) {
this.FriendName = FriendName;
}
public String getImage() {
return image;
}
public void setImage(String image) {
this.image = image;
}
}
И AdapterNewsFeed
public class AdapterNewsFeed extends ArrayAdapter {
List list=new ArrayList();
public AdapterNewsFeed(Context context, int resource) {
super(context,resource);
}
@Override
public int getCount() {
return list.size();
}
public void add(EventsElements object) {
super.add(object);
list.add(object);
}
@Override
public Object getItem(int position) {
return list.get(position);
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View view;
view=convertView;
ElementsHolder elemetsHolder;
if (view==null){
LayoutInflater layoutInflater = (LayoutInflater)this.getContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
view = layoutInflater.inflate(R.layout.custom_events_list_in_newsfeed,parent,false);
elemetsHolder=new ElementsHolder();
elemetsHolder.EventTitle=(TextView) view.findViewById(R.id.EventTitle);
elemetsHolder.EventDate=(TextView) view.findViewById(R.id.EventDate);
elemetsHolder.FriendName=(TextView) view.findViewById(R.id.FriendName);
elemetsHolder.imageView=(ImageView)view.findViewById(R.id.FriendsUserImage);
view.setTag(elemetsHolder);
}
else
{
elemetsHolder=(ElementsHolder) view.getTag();
}
EventsElements eventsElements=(EventsElements)this.getItem(position);
elemetsHolder.EventTitle.setText(eventsElements.getEventTitle());
elemetsHolder.EventDate.setText(eventsElements.getEventDate());
elemetsHolder.FriendName.setText(eventsElements.getFriendName());
Picasso.with(getContext()).load(Uri.parse(eventsElements.getImage())).fit().into(elemetsHolder.imageView);
return view;
}
static class ElementsHolder
{
TextView EventTitle,EventDate,FriendName;
ImageView imageView;
String user_id;
}
}
Я также пробовал это, но не работал. показывая те же результаты @ g2o – Bebo
, пожалуйста, добавьте 'Log.d (TAG,« url »+ eventsElements.getImage());' перед вызовом Picasso и скажите мне, в чем результат. –