问题描述
如果遇到相同的错误,请帮助我调整或指导我如何加载特定图像
我正在尝试使用 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 (将#修改为@)