如何在Kotlin Activity中引用strings.xml字符串资源(非XML方式)
在Kotlin Activity中引用strings.xml字符串的正确方法
你代码里用的@string/EmailNotValid是XML文件专属的资源引用语法,Kotlin代码里不能这么写,得用Android提供的Context相关方法来获取字符串资源。
正确修改方式
Activity本身是Context的子类,直接调用getString(R.string.xxx)就能拿到对应的字符串资源。把你的代码改成这样就行:
fun signup(){ val email = binding.emailInput.text.toString() if(!Patterns.EMAIL_ADDRESS.matcher(email).matches()) { binding.emailInput.setError(getString(R.string.EmailNotValid)) return } }
额外说明
- 先确认
res/values/strings.xml里已经正确定义了这个字符串条目:<string name="EmailNotValid">邮箱格式不合法</string> - 如果是在非Context类(比如工具类)里需要获取字符串,得传入Context对象,再调用
context.getString(R.string.xxx)。
内容的提问来源于stack exchange,提问作者SuperDialga
相关产品推荐
相关产品推荐

