Я хочу получить все изображения с сервера через библиотеку Glide или Volley
Эти библиотеки используются для загрузки и кэширования изображений на Android на самом деле.
Чтобы загрузить и показать все эти изображения, вы можете сделать вывод Json
всех этих ссылок со стороны сервера, используя json_encode()
( на PHP, например ), затем анализирует json в Android и просматривает весь вывод ссылок Json
, затем показывает изображения в библиотеке Glide или Volley .
Редактировать :
Вот как это должно быть на Android (на стороне клиента) внутри RecyclerView
Adapter
:
Glide.with(myContext)
.load(mPosts.imgurl)
.apply(options)
.into(ViewHolder.imgShow)
Следуйте: https://ledron.github.io/RecyclerView/
Однако вы можете добавить эти ссылки отдельно в ArrayList
на Android, а затем показать их тоже.Следуйте инструкциям и используйте адаптер для RecyclerView
.
Пример Adapter
:
public class Adapter extends RecyclerView.Adapter<Adapter.ViewHolder>{
ArrayList<String> urls;
Context context;
//constructor
public Adapter(ArrayList<String> ImgUrl, Context context_)
{
this.urls = ImgUrl;
this.context = context_;
}
public static class ViewHolder extends RecyclerView.ViewHolder
{
private ImageView image;
public ViewHolder(View v)
{
super(v);
image =(ImageView)v.findViewById(R.id.img);
}
public ImageView getImage(){ return this.image;}
}
@Override
public Adapter.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType)
{
View v = LayoutInflater.from(parent.getContext()).inflate(R.layout.listitem, parent, false);
v.setLayoutParams(new RecyclerView.LayoutParams(1080,800));
return new ViewHolder(v);
}
@Override
public void onBindViewHolder(final ViewHolder holder, int position)
{
Glide.with(this.context)
.load(urls.get(position))
.diskCacheStrategy(DiskCacheStrategy.ALL)
.into(holder.getImage());
}
@Override
public int getItemCount()
{
return urls.size();
}
}