android id 转字符串,如何字符串转换为它的资源ID(Android的一室公寓)

下面的例子如何让strings.xml中定义字符串和它们的值。你唯一需要做的就是做一个循环并测试哪个字符串保存了你的值。如果你需要重复这么多次,建立一个数组可能会更好。 // ---------

String strField = "";

int resourceId = -1;

String sClassName = getPackageName() + ".R$string";

try {

Class classToInvestigate = Class.forName(sClassName);

Field fields[] = classToInvestigate.getDeclaredFields();

strField = fields[0].getName();

resourceId = getResourceId(strField,"string",getPackageName());

String test = getResources().getString(resourceId);

Toast.makeText(this,

"Field: " + strField + " value: " + test ,

Toast.LENGTH_SHORT).show();

} catch (ClassNotFoundException e) {

Toast.makeText(this,

"Class not found" ,

Toast.LENGTH_SHORT).show();

} catch (Exception e) {

Toast.makeText(this,

"Error: " + e.getMessage() ,

Toast.LENGTH_SHORT).show();

}

}

public int getResourceId(String pVariableName, String pResourcename, String pPackageName)

{

try {

return getResources().getIdentifier(pVariableName, pResourcename, pPackageName);

} catch (Exception e) {

e.printStackTrace();

return -1;

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值