如何解决当毕加索无法使用jsoup加载图像时如何使用默认图像
如果遇到相同的错误,请帮助我调整或指导我如何加载特定图像
我正在尝试使用 jsoup 获取一些图像,但有些图像无法加载,因为它无法加载其中一些图像,因此应用程序崩溃并出现此错误
这是我在活动中使用 jsoup 的地方
protected Void doInBackground(Void... voids) {
try {
String url = "https://www.blueprint.ng";
Document doc = Jsoup.connect(url).get();
Elements data = doc.select("div.pt-cv-wrapper");
int size = data.size();
Log.d("doc","doc: "+doc);
Log.d("data","data: "+data);
Log.d("size",""+size);
for (int i = 0; i < size; i++) {
String imgUrl = data.select("a")
.select("img")
.eq(i)
.attr("src");
String title = data.select("h4")
.select("a")
.eq(i)
.text();
String source = data.select("h4")
.select("a")
.eq(i)
.attr("href");
String date = data.select("div.jeg_meta_date")
.select("a")
.eq(i)
.text();
String hint = data.select("div.pt-cv-content")
.eq(i)
.text();
itemParses.add(new ItemParse(imgUrl,title,source,date,hint));
Log.d("items","img: " + imgUrl + " . title: " + title + " . source: " + source + " . date: " + date + " . hint: " + hint);
}
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
我的 AdapterParse.java
private ArrayList<ItemParse> itemParses;
private Context context;
public AdapterParse(ArrayList<ItemParse> itemParses,Context context) {
this.itemParses = itemParses;
this.context = context;
}
@NonNull
@Override
public ViewHolder onCreateViewHolder(@NonNull ViewGroup parent,int viewType) {
View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.item_parse,parent,false);
return new ViewHolder(view);
}
@Override
public void onBindViewHolder(@NonNull ViewHolder holder,int position) {
ItemParse itemParse = itemParses.get(position);
holder.textView.setText(itemParse.getTitle());
holder.textView2.setText(itemParse.getDate());
holder.textView3.setText(itemParse.getHint());
Picasso.get().load(itemParse.getImgUrl()).into(holder.imageView);
}
@Override
public int getItemCount() {
return itemParses.size();
}
public class ViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener {
ImageView imageView;
TextView textView;
TextView textView2;
TextView textView3;
public ViewHolder(@NonNull View view) {
super(view);
imageView = view.findViewById(R.id.imageView);
textView = view.findViewById(R.id.textView);
textView2 = view.findViewById(R.id.textView2);
textView3 = view.findViewById(R.id.textView3);
view.setOnClickListener(this);
}
@Override
public void onClick(View view) {
int position = getAdapterPosition();
ItemParse itemParse = itemParses.get(position);
Intent intent = new Intent(context,DetailActivity.class);
intent.putExtra("title",itemParse.getTitle());
intent.putExtra("source",itemParse.getSource());
intent.putExtra("date",itemParse.getDate());
intent.putExtra("hint",itemParse.getHint());
intent.putExtra("image",itemParse.getImgUrl());
context.startActivity(intent);
}
}
public void setFilter (ArrayList<ItemParse> newList) {
itemParses = new ArrayList<>();
itemParses.addAll(newList);
notifyDataSetChanged();
}
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。