You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Volley时RecyclerViewAdapter点击跳转新Activity图片不显示问题求助

问题根因
  1. 你在Adapter中通过Intent传递的imagename是字符串类型(对应实体类DisplayUser里的image字段,是存储服务器图片文件名的字符串),但在DetailsActivity中错误使用getIntExtra()取值,类型不匹配只能拿到默认值0,调用setImageResource(0)自然不会显示任何图片。
  2. 你注释掉的Glide加载逻辑才是适配你场景的正确写法,setImageResource()仅用于加载APK内置的drawable本地资源,无法加载你存放在服务器的网络图片。
修复方案

直接替换DetailsActivity中onCreate方法里的图片加载代码即可:

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_details);

    img = findViewById(R.id.desc_img);
    tv1 = findViewById(R.id.desc_header);
    tv2 = findViewById(R.id.desc_desc);

    // 修复后的图片加载逻辑
    String imageName = getIntent().getStringExtra("imagename");
    Glide.with(this)
        .load("http://10.0.2.2/volley/images/" + imageName)
        .into(img);

    tv1.setText(getIntent().getStringExtra("header"));
    tv2.setText(getIntent().getStringExtra("desc"));
}
额外注意事项
  • 确认AndroidManifest.xml中已添加网络权限:<uses-permission android:name="android.permission.INTERNET" />
  • 如果你测试用的系统版本高于Android 9(API 28),系统默认禁止明文HTTP请求,需要在manifest的application标签添加android:usesCleartextTraffic="true"属性,或者将服务端地址升级为HTTPS。

内容的提问来源于stack exchange,提问作者Manab Gogoi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 22:09:03