Android获取R.string.xml类型为int问题

今天顺手把Log的tag写到string.xml里去了,接着就出现了下面的问题

看后发现,R.string.xml调出来的数据被定义为了int。第一次遇到,查阅相关资料后发现  R.drawable R.layout R.string等就是int类型,编译的时候生成R类,R文件就相当于将所有资源做了一个处理,内部又生成了drawable layout等类,然后资源文件会使用一个int类的静态常量代替

具体解决方案如下:

原文连接:https://www.cnblogs.com/mooreliu/p/4849953.html

获取string.xml文件里面的值有几个不同的地方。

1. 在AndroidManifest.xml与layout等xml文件里:

android:text="@string/resource_name"  

2.在activity里:

方法一:this.getString(R.string.resource_name);  
方法二:getResources().getString(R.string.resource_name);  

3在其他java文件(必须有Context或pplication)

context.getString(R.string.resource_name);  
application.getString(R.string.resource_name);  

之后就完美解决啦

不过后来我也就不图省事情,自己手打啦哈哈哈

如果感兴趣的话可以阅读相关R文件知识

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值