Android根据名字映射资源id的方法

android 通过名字得到资源ID 通过资源名称 获得资源的id package com.example.activitylibrary; import android.app.Activity; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.TextView; import android.widget.Toast; public class LibraryActivity extends Activity { String msg = "我是来自Jar中的Activity"; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(MResource.getIdByName(getApplication(), "layout", "activity_main")); TextView mTextView = (TextView) findViewById(MResource.getIdByName(getApplication(), "id", "textView1")); mTextView.setText(msg); Button mButton = (Button) findViewById(MResource.getIdByName(getApplication(), "id", "button1")); mButton.setText(msg); mButton.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { Toast.makeText(getApplication(), msg, Toast.LENGTH_SHORT).show(); } }); } } 立即下载
/**
 * 根据名字映射资源id的工具类
 */
public class CPResourceUtil {
    public static int getLayoutId(Context paramContext, String paramString) {
        return paramContext.getResources().getIdentifier(paramString, "layout",
                paramContext.getPackageName());
    }

    public static int getStringId(Context paramContext, String paramString) {
        return paramContext.getResources().getIdentifier(paramString, "string",
                paramContext.getPackageName());
    }

    public static int getDrawableId(Context paramContext, String paramString) {
        return paramContext.getResources().getIdentifier(paramString,
                "drawable", paramContext.getPackageName());
    }

    public static int getMipmapId(Context paramContext, String paramString) {
        return paramContext.getResources().getIdentifier(paramString,
                "mipmap", paramContext.getPackageName());
    }

    public static int getStyleId(Context paramContext, String paramString) {
        return paramContext.getResources().getIdentifier(paramString,
                "style", paramContext.getPackageName());
    }

    public static int getId(Context paramContext, String paramString) {
        return paramContext.getResources().getIdentifier(paramString,"id", paramContext.getPackageName());
    }

    public static int getColorId(Context paramContext, String paramString) {
        return paramContext.getResources().getIdentifier(paramString,
                "color", paramContext.getPackageName());
    }
    public static int getArrayId(Context paramContext, String paramString) {
        return paramContext.getResources().getIdentifier(paramString,
                "array", paramContext.getPackageName());
    }
}
Android中修改资源ID值 Android中修改资源Id的值的案例 立即下载

相关推荐

Android中实现根据资源名获取资源ID

接触过Android开发的同学们都知道在Android中访问程序资源基本都是通过资源ID来访问。这样开发起来很简单,并且可以不去考虑各种分辨率,语言等不同资源显式指定。 痛点 但是,有时候也会有一些问题,比如我们根据服务器端的值取图片,但是服务器端绝对不会返回给我们的是资源id,最多是一种和文件名相关联的值,操作资源少的时候,可以维护一个容器进行值与资源ID的映射,但是多的话,就需要另想办法了。 便捷的方法 在这种情况下,使用文件名来得到资源ID显得事半功倍。 通过调用Resources的getIdentifier可以很轻松地得到资源ID。 几个简单的示例: 代码如下: Resources

Android 常用Utils工具类

ScreenUtils.java /屏幕相关工具类 package com.common.utils; import android.app.Activity; import android.app.KeyguardManager; import android.content.Context; import android.content.pm.ActivityInfo; import an...

静虚待令,有物混成 2722

优化求解器性能:当分支切割算法中的gap停滞不前时如何应对

本文深入探讨了当分支切割算法求解复杂整数规划问题时,gap停滞不前的根本原因与应对策略。文章指出gap停滞源于上界(找不到更优整数解)或下界(证明过程缓慢)提升受阻,并提供了从模型改写、自定义割平面、调整搜索策略到参数调优等一系列实战方法,帮助优化工程师有效打破求解僵局,推动gap下降。

weixin_29294597的博客 381

android 获取资源id的工具类

在开发SDK中,如果需求中要开发者去实现界面,然后再给别人调用。这样的需求,我们必须去写一个工具类来获取各个资源文件夹下的id。通过底层获取id的代码实现,这样游戏接了才不会导致找不到资源ID。 import android.content.Context; import java.lang.reflect.Field; public class ResourceUtil { pu

DexLins的博客 1198

如何使用windows搭建一个公网ftp/sftp服务器

在有公网ip的情况下,使用windows系统搭建一个ftp/sftp服务器会带来很多的方便,可以实现远程移动端的一键式访问,对于文件的备份、多设备的共享都十分的方便。然而网上许多的教程都是基于windows自带的iis搭建一个局域网ftp服务器,然而在搭建好后,我想要通过端口映射的方式实现在外网访问时,却发现连接不上的问题,感觉可能是因为windows家庭版的原因导致的。因此在查阅很多资料之后终于找到了一个公网ftp/sftp服务器的搭建方式,实测可用。这里把流程记录一下,做一个备忘录,也方便大家搭建。

weixin_43354138的博客 1万+

【电磁场计算】磁偶极子在外磁场中的受力

最近在总结电磁场计算公式的时候发现,关于磁偶极子受力的计算公式,在不同文献中的说明有点出入,在此特地写一篇博客澄清一下。

sky4403的博客 7468

ResourceUtils 创建资源目录工具类

package com.jcf.utilsdemo; import android.content.Context; import android.content.res.Resources; public class ResourceUtils { public static int getDrawableId(Context context, String nam...

weixin_30727835的博客 347

论文理解【LLM-Agent】——【SkillOpt】Executive Strategy for Self-Evolving Agent Skills

SkillOpt 将 agent skill 从人工或一次性 prompt artifact 转化为可验证、可控、可迁移的文本空间“可训练状态”,通过有界编辑、验证门控、拒绝编辑反馈和 slow/meta update,在不更新模型权重的情况下显著提升多类 agent 任务表现

佚失的诗篇 588

ResUtil~~Android反射工具类

Android 反射的使用使用字符串反射获取资源文件工具类/** * 反射获取资源文件 * @version V1.0 * @author: SUNTAO * @date: 2017-01-11 16:27 */ public class ResUtil {public static int getLayoutId(Context context, String cparam)

st526403649的博客 727

SAP PP模块 MRP配置实战:5步完成工厂级物料需求计划激活

本文详细介绍了SAP PP模块中物料需求计划(MRP)的工厂级配置实战,通过5个关键步骤从基础环境准备到最终激活。内容涵盖SPRO后台配置、MRP控制者定义、主数据设置及核心参数调整,帮助顾问快速掌握MRP配置清单的完整流程,确保物料需求计划的高效运行。

weixin_30431445的博客 342

边缘计算与产业生态系统

目录 文章目录目录边缘计算产业参与者边缘计算产业生态系统 边缘计算产业参与者 边缘计算领域参与者众多,主流公司以打造生态优势为目标,基于自身服务层级向产业链上下两端进行拓展,目前市场主要参与者有: 系统集成商:在产业头部,具有广泛的能力,可以集成不同生态系统公司的产品,具有一定的全球性属性,在边缘计算领域大多由云服务商、电信运营商担任。 云服务商:具有领先的云技术优势与应用生态体系,同时拥有全球性资源布局与市场资源生态,并渴望成为边缘计算主导者。 电信运营商:具有边缘基础设施优势,以及不可替代的

烟云的计算 2103

android 工具类篇 ResourceUtils

import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.List; import android.content.Context; /** * ResourceUtils

苏东生的专栏 810

YOLO26优化:注意力魔改 | 用于微小目标检测的上下文增强和特征细化网络ContextAggregation,助力小目标检测,暴力涨点

用于微小目标检测的上下文增强和特征细化网络ContextAggregation,助力小目标检测

①答疑群聊服务;②YOLO大模型知识问答系统;③计算机视觉论文生成智能体; 489

android开发中资源文件和资源ID是如何映射的

有一段时间没有更新博客了。这里贴一篇从stackoverflow整理过来的问答,来冒充一下自己的原创。 问题: android里面,资源文件和资源ID之间的映射是如何工作的? 问题描述: 做Android应用开发的时候,我们知道可以通过 R.id.xxx 来非常方便的访问应用程序的资源。 但是任何资源最终要编译成二进制格式的,那么在这种机制下,系统是如

无为 922

【红外技术】DDE算法:HE在红外图像可视化上的应用(附源码)

并且数据一般是以 8 的整数倍的位宽在电子系统中应用,因此大多数的显示器的显示位宽为 8bit,共 256 个灰阶。为了使红外图像可视化,因此需要一种“数据压缩”技术,还需要既可能的不丢失原始图像信息。HE后的图像直方图分布比较均匀离散,图像对比度好。但是HE算法只是适用某些图像,它是将灰度集中区域进行拉伸得到,也会放大该集中区域的噪声,它是一种“不公平”的映射。以下是红外细节增强算法的演示,很明显右边的图像,展现了更多的图像细节,对于小目标的观测非常友好。文章已于2019-12-02修改。

sunwindl91181的博客 911

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

安卓 java 映射目录_android里面,资源文件和资源ID之间的映射是如何工作的?

android里面,资源文件和资源ID之间的映射是如何工作的?问题描述:做Android应用开发的时候,我们知道可以通过 R.id.xxx 来非常方便的访问应用程序的资源。但是任何资源最终要编译成二进制格式的,那么在这种机制下,系统是如何工作的?例如,在layout1.xml里面,我们这样写:然后AAPT 会生成R.java文件:public static final int button1=0x...

weixin_34928063的博客 223

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

Android 通过名称获取资源ID

通过名称获取资源ID一.为什么要这么做我们已经习惯使用 R.id.btn、R.drawable.bg_img 这种方式获取资源了,这样写确实很方便。 但是有一个问题,比如我们根据服务器的返回的名称选择本地不同的图片进行展示,但是服务器返回的一般都是图片的名称,不可能返回资源的id。1)首先,你得知道,比如服务器返回一个值 picName,我们是不能通过拼接字符串 “R.drawable.”+

jingwenpeng的博客 1822

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

android_id生成方法,android 资源ID生成规则

android里面,资源文件和资源ID之间的映射是如何工作的?问题描述:做Android应用开发的时候,我们知道可以通过 R.id.xxx 来非常方便的访问应用程序的资源。但是任何资源最终要编译成二进制格式的,那么在这种机制下,系统是如何工作的?例如,在layout1.xml里面,我们这样写:然后AAPT 会生成R.java文件:public static final int button1=0x...

weixin_42297605的博客 2958

android 资源ID生成规则

android里面,资源文件和资源ID之间的映射是如何工作的? 问题描述: 做Android应用开发的时候,我们知道可以通过 R.id.xxx 来非常方便的访问应用程序的资源。 但是任何资源最终要编译成二进制格式的,那么在这种机制下,系统是如何工作的? 例如,在layout1.xml里面,我们这样写:   然后AAPT 会生成R.java文件:  public static fin

Nio96的专栏 1万+

android里面,资源文件和资源ID之间的映射是如何工作的?

android里面,资源文件和资源ID之间的映射是如何工作的? 问题描述: 做Android应用开发的时候,我们知道可以通过 R.id.xxx 来非常方便的访问应用程序的资源。 但是任何资源最终要编译成二进制格式的,那么在这种机制下,系统是如何工作的? 例如,在layout1.xml里面,我们这样写:   然后AAPT 会生成R.java文件:  public static fi

努力奋斗 828

Android根据资源名获取资源ID

接触过Android开发的同学们都知道在Android中访问程序资源基本都是通过资源ID来访问。这样开发起来很简单,并且可以不去考虑各种分辨率,语言等不同资源显式指定。 痛点 但是,有时候也会有一些问题,比如我们根据服务器端的值取图片,但是服务器端绝对不会返回给我们的是资源id,最多是一种和文件名相关联的值,操作资源少的时候,可以维护一个容器进行值与资源ID的映射,但是多的话,就需要另想办法了。...

技术小黑屋 393

android通过colors.xml中定义的颜色名字映射color ID的方法

项目中遇到了一个根据callback去设置几十种颜色设置的需求,如果用if 或者switch去写,将会很多代码,现在写了一个映射的方法去获取colors id的方法。colors.xml文件中定义几个颜色,比如我定义了一个name为test_color_xx的4个颜色。剩下的就是TextView.setTextColor(valueToColor(1));通过java映射出来test_color_xx颜色的ID的方法。这个方法可以省去很对代码逻辑,记录下来,也留给需要的打工人。

LjingDong的博客 663

android 由资源名称获得ID的方法

我的思路是,在string.xml文件里头建一个String-array,用来配置资源的名称,例如图片,使得外部的资源改变时,通过xml的配置免得去修改源程序:   Xml代码   string-array name="tab_icons">       item>g_more_detailitem>       item>g_reset_pwitem>    

368
上一篇: 怎么知道recyclerview是否在滑动
下一篇: Android onCreate方法两个参数和一个参数的区别
小飞侠在吗
博客等级 码龄12年 14粉丝 84原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值