gpt4 book ai didi

android - 如何在未下载图像时显示加载进度

转载 作者:行者123 更新时间:2023-11-29 15:01:42 25 4
gpt4 key购买 nike

我正在尝试设置 progressdialogprogressbar 而图像未下载,我已经使用位于 drawable 文件夹中的图像,我设置了这个图片为默认图片,图片未下载。我如何通过 progress 像这样替换 default image :

enter image description here

Java:

public class Art extends Fragment {
RecyclerView recyclerView;
GridView myGrid;
CategoryAdapter adapter;

public Art() {
// Required empty public constructor
}

@Override
public View onCreateView(final LayoutInflater inflater, final ViewGroup container, Bundle savedInstanceState) {
final ArrayList<String> movieList = new ArrayList<>();
movieList.add("https://myimage.com");
movieList.add("https://myimage.com");
View v = inflater.inflate(R.layout.fragment_art, container, false);
myGrid= (GridView) v.findViewById(R.id.gridViewCategory);
adapter =new CategoryAdapter(getActivity(),movieList);
myGrid.setAdapter(adapter);
myGrid.setOnItemClickListener(new android.widget.AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
Intent popup = new Intent(getActivity(), Pop.class);
popup.putExtra("WallpaperURL", movieList.get(position));
startActivity(popup);
}
});
return v;
}
}
class CategoryAdapter extends BaseAdapter {
private Context context;
private ArrayList<String> imageId=new ArrayList<String>();
CategoryAdapter(Context context,ArrayList<String> imageId){
this.context=context;
this.imageId=imageId;
}
@Override
public int getCount() {
return imageId.size();
}

@Override
public Object getItem(int position) {
return imageId.get(position);
}

@Override
public long getItemId(int position) {
return position;
}
class ViewHolder{
ImageView CategoryImage;
ViewHolder(View view){
CategoryImage = (ImageView) view.findViewById(R.id.cat_imageView);
}
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View row=convertView;
ViewHolder holder=null;
if(row == null){
LayoutInflater inflater= (LayoutInflater) context.getSystemService(context.LAYOUT_INFLATER_SERVICE);
row=inflater.inflate(R.layout.picture_item,parent,false);
holder=new ViewHolder(row);
row.setTag(holder);
}
else{
holder=(ViewHolder) row.getTag();
}
Glide.with(context).load(imageId.get(position)).placeholder(R.drawable.arrw).into(holder.CategoryImage);
return row;
}
}

最佳答案

我想你可能想要这样

view.findViewById(R.id.progress_bar).setVisibility(View.VISIBLE);
//enable loading

Glide.with(context)
.load(IMAGES.get(position))
.error(R.drawable.matrade_logo2)
.placeholder(R.drawable.placeholder)
.listener(new RequestListener < String, GlideDrawable > () {
@Override
public boolean onException(Exception e, String model, Target < GlideDrawable > target, boolean isFirstResource) {
//
return false;
}

@Override
public boolean onResourceReady(GlideDrawable resource, String model, Target < GlideDrawable > target, boolean isFromMemoryCache, boolean isFirstResource) {
// hide loading if image finished downloading
return false;
}
})
.into(imageView);

关于android - 如何在未下载图像时显示加载进度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43756941/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com