У меня есть строка [] с десятью источниками URL-адресов изображений, и я пытаюсь заставить ImageView их показывать. Я должен показать каждое изображение с соответствующим текстом рядом с ним, и хотя тексты показывают, что изображения просто не будут работать. Я пробовал все решения, которые мог найти, но ничего не получается. Я был бы очень признателен за некоторые рекомендации.
Это решение, которое я пытаюсь сделать:
Метод, который я вызываю из класса, расширяющего ListActivity.
(заголовки и imageurls - String [], imageurls содержит источники URL-адресов изображений, а заголовки содержат текст, который будет отображаться рядом с изображениями)
setListAdapter(new MyPerformanceArrayAdapter(this, titles, imageurls));
И вот код, который у меня есть для MyPerformanceArrayAdapter:
public class MyPerformanceArrayAdapter extends ArrayAdapter<String> {
private final Activity context;
private final String[] names;
private final String[] images;
public MyPerformanceArrayAdapter(Activity context, String[] names, String[] images) {
super(context, R.layout.rowlayout, names);
this.context = context;
this.names = names;
this.images = images;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
LayoutInflater inflater = context.getLayoutInflater();
View rowView = inflater.inflate(R.layout.rowlayout, null, true);
TextView textView = (TextView) rowView.findViewById(R.id.label);
ImageView imageView = (ImageView) rowView.findViewById(R.id.icon);
String s = names[position];
textView.setText(s);
Drawable drawable = LoadImageFromWebOperations(images[position]);
imageView.setImageDrawable(drawable);
return rowView;
}
private Drawable LoadImageFromWebOperations(String url) {
try {
InputStream is = (InputStream) new URL(url).getContent();
Drawable d = Drawable.createFromStream(is, "src name");
return d;
} catch (Exception e) {
System.out.println("Exc="+e);
return null;
}
}
}
Большое спасибо!