You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Android中如何从XML文件获取CheckBox的ID并显示到页面?

解决Android CheckBox获取XML定义ID名称的问题

嗨,我来帮你搞定这个问题!你遇到的情况其实很常见——调用getId()得到的是Android系统在运行时给控件分配的整数型ID,而你XML里写的@+id/bi16160241是这个控件的资源名称,这俩本来就不是一回事儿。

要获取XML里定义的那个ID名称字符串并显示到页面上,你可以这么做:

核心思路

通过getResources().getResourceEntryName()方法,把getId()返回的整数值ID传进去,就能得到你在XML里定义的那个ID名称(也就是bi16160241)。

代码示例

Java版本

// 找到你的CheckBox控件
CheckBox checkBox = findViewById(R.id.bi16160241);
// 获取系统分配的整数ID
int intId = checkBox.getId();
// 转换成XML里的ID名称字符串
String idName = getResources().getResourceEntryName(intId);

// 把ID名称显示到页面上(比如用TextView)
TextView displayTv = findViewById(R.id.your_display_textview_id);
displayTv.setText("CheckBox的ID名称:" + idName);

Kotlin版本

// 找到CheckBox控件
val checkBox = findViewById<CheckBox>(R.id.bi16160241)
// 获取整数ID
val intId = checkBox.id
// 转换成ID名称字符串
val idName = resources.getResourceEntryName(intId)

// 显示到TextView
val displayTv = findViewById<TextView>(R.id.your_display_textview_id)
displayTv.text = "CheckBox的ID名称:$idName"

注意事项

  • 如果你是在自定义View里执行这段代码,记得用getContext().getResources()来获取资源对象,而不是直接调用getResources()。
  • 确保你已经在布局里添加了用来显示ID的TextView,并且正确设置了它的ID(比如上面代码里的your_display_textview_id)。

内容的提问来源于stack exchange,提问作者ELVIN MALIH FKI

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.21 08:05:55