context.getResources().getIdentifier()方法 通过某个变量获取文件夹内同名文件

本文介绍如何通过Context的getResources().getIdentifier方法,结合Glide库,从网络请求的数据中解析出资源ID,特别是针对mipmap文件夹下的图片资源,用于设置UI。示例代码展示了如何将网络请求的天气数据解析后,动态设置天气图片。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

getIdentifier(String name, String defType, String defPackage )
name:表示资源文件的名称(不带后缀名),不可以为空,
defType:资源文件所在的文件夹:drawable,mipmap…
defPackage:包名,context.getPackageName()获取

适用于:网络请求的数据通过gson解析成对象或者直接用数据 获取某个文件夹下同名文件
如下展示通过网络请求后的数据解析成对象后 通过其中某一变量设置UI图片(图片在mipmap文件夹下):

  int weaImageId = context.getResources().getIdentifier(hours.getWea_img(),"mipmap",context.getPackageName());
        Glide.with(context)
                .load(weaImageId)
                .into(mTvWea);
03-21 23:30:14.686 10057 29101 29101 D CompatChangeReporter: Compat change id reported: 202956589; UID 10057; state: ENABLED 03-21 23:30:14.687 1000 2675 4003 D ActivityManager: Cancel freezing 29079 com.google.android.apps.carrier.carrierwifi 03-21 23:30:14.696 10057 29101 29101 I Perf : Connecting to perf service. 03-21 23:30:14.701 10057 29101 29101 V GraphicsEnvironment: Currently set values for: 03-21 23:30:14.701 10057 29101 29101 V GraphicsEnvironment: angle_gl_driver_selection_pkgs=[] 03-21 23:30:14.701 10057 29101 29101 V GraphicsEnvironment: angle_gl_driver_selection_values=[] 03-21 23:30:14.701 10057 29101 29101 V GraphicsEnvironment: Global.Settings values are invalid: number of packages: 0, number of values: 0 03-21 23:30:14.701 10057 29101 29101 V GraphicsEnvironment: Neither updatable production driver nor prerelease driver is supported. 03-21 23:30:14.714 10057 29101 29116 W ThemeOverlayManager: Skip enabled overlay package:com.google.android.overlay.modules.documentsui, user:UserHandle{0} 03-21 23:30:14.728 10112 29079 29115 D CompatChangeReporter: Compat change id reported: 263076149; UID 10112; state: ENABLED 03-21 23:30:14.735 1000 2675 4003 D CompatChangeReporter: Compat change id reported: 161145287; UID 10112; state: ENABLED 03-21 23:30:14.737 10057 29101 29101 E oid.documentsui: Invalid resource ID 0x00000000. 03-21 23:30:14.738 10057 29101 29101 D CompatChangeReporter: Compat change id reported: 279646685; UID 10057; state: ENABLED 03-21 23:30:14.751 1000 2675 4665 D ActivityManager: Async freezing 29079 com.google.android.apps.carrier.carrierwifi 03-21 23:30:14.752 1000 2675 4665 D ActivityManager: Cancel freezing 28526 com.google.android.apps.docs 03-21 23:30:14.761 1000 2675 4683 D ActivityManager: Cancel freezing 29079 com.google.android.apps.carrier.carrierwifi 03-21 23:30:14.765 10057 29101 29123 I ProvidersCache: Provider returned no roots. Possibly naughty: com.google.android.apps.docs.storage 03-21 23:30:14.766
最新发布
03-22
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值