• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >Android > Android中通过反射获取资源Id,android获取资源id

Android中通过反射获取资源Id,android获取资源id

作者:网友 字体:[增加 减小] 来源:互联网 时间:2017-05-26

网友通过本文主要向大家介绍了android 反射,android 反射机制,android 反射调用方法,android 获取资源id,android 资源id等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

Android中通过反射获取资源Id,android获取资源id


在将自己写的工具打成.jar包的时候,有时候会需要引用到res中的资源,这时候不能将资源一起打包,只能通过反射机制动态的获取资源.

特别用在自己定义一个工具将其打成.jar包时,特别注意资源的获取

 

1、封装成一个工具类 

package com.cp.utils;

import android.content.Context;

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 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()); 
    } 
}

  

2、资源的获取

<string name="version_update_schedule">已下载%1$s请稍等…</string>

  

3.java

String text=mContext.getResources().getString(CPResourceUtil.getStringId(mContext, "version_update_schedule"));
TextView.setText(String.format(text, p+"%"));
version_update_schedule 是string文件中name

  

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • Android中通过反射获取资源Id,android获取资源id
  • Android--绑定服务调用服务的方法

相关文章

  • 2017-05-26让java程序在后台一直执行(例如putty关闭后后台程序继续运行)
  • 2017-05-222.5.6 ViewFlipper(翻转视图)的基本使用
  • 2017-05-26安卓第十一天笔记-Intent与inter-filter配置,intentfilter
  • 2017-05-26Android自定义控件来袭(Scroller)
  • 2017-05-26Service的启动与停止、绑定与解绑,service停止绑定
  • 2017-05-26android:px,dp(dip),sp的区别
  • 2017-05-26【Android开发】完美解决Android完全退出程序,开发android
  • 2017-05-26Linux内核系列—操作系统开发之HelloWorld,linuxhelloworld
  • 2017-05-26MAT使用入门,mat入门
  • 2017-05-26Andriod中Style/Theme原理以及Activity界面文件选取过程浅析

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • 安卓--获取应用版本名称与版本号,安卓--版本版本号
    • android 对话框,android
    • 用Kotlin创建第一个Android项目(KAD 01),kotlinandroid
    • Android系统默认对话框添加图片,
    • Android Studio下NDK的使用
    • 【搬砖】安卓入门(1)- Java开发入门,安卓java
    • Linux文件和目录权限详细讲解,linux权限讲解
    • 高通android开发缩写
    • android studio 使用checkstyle全攻略
    • Android学习笔记(32):通知推送Notification浅析

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有