Android 为什么没有从可绘制对象获取资源名称的方法

Android 为什么没有从可绘制对象获取资源名称的方法,android,Android,要从任何资源创建可绘制对象,我们可以使用以下代码(我的图像名称为arrow\u selected.png) 但是稍后在应用程序中,我想从这个可绘制对象获取资源名称。 我没有找到任何方法来获取如下所示的资源名称 d.getResourceName(); 为什么android API中没有这样的方法。如何从Drawable对象获取资源名称? 为什么android API中没有这样的方法 因为不必从资源创建可绘制的 如何从Drawable对象获取资源名称 你没有。您可以在其他地方跟踪它(例如,类的其

要从任何资源创建可绘制对象,我们可以使用以下代码(我的图像名称为arrow\u selected.png)

但是稍后在应用程序中,我想从这个可绘制对象获取资源名称。 我没有找到任何方法来获取如下所示的资源名称

d.getResourceName();
为什么android API中没有这样的方法。如何从Drawable对象获取资源名称?

为什么android API中没有这样的方法

因为不必从资源创建
可绘制的

如何从Drawable对象获取资源名称


你没有。您可以在其他地方跟踪它(例如,类的其他数据成员)。

如果您真的需要该功能(我不确定您是否需要),您可以创建自己的类,该类扩展
Drawable
类并在构造函数的参数中接收
资源ID


然后您需要将这个
ResID
存储在类中的一个特殊字段中,并为该字段实现
getter
setter
。瞧

我也在搜索,但我想出了以下解决方案:

String name = context.getResources().getResourceEntryName(imageResID);

我希望这会有所帮助。

但是如果我可以从任何资源创建一个可绘制文件,那么应该存在一种存储其名称的方法。
String name = context.getResources().getResourceEntryName(imageResID);