【问题标题】:Can I assign a id to a drawable, which I construct programmatically?我可以为我以编程方式构建的drawable分配一个id吗?
【发布时间】:2012-04-04 02:42:49
【问题描述】:

由XML创建的drawable可以在代码中被引用

    R.drawable.my_drawable

所以,我假设drawables确实有一个资源ID。

当我浏览文档时,我找不到方法:

    myDrawable.setId(id)

所以,虽然我可以在代码中构造一个可绘制对象,但我不知道如何将 id 分配给我在代码中创建的可绘制对象?

【问题讨论】:

  • 为什么需要给drawable分配一个id? R.drawable.* 已经是该资源的唯一标识符。
  • 因为我在代码中创建了ShapeDrawable,所以不存在xml文件。
  • 您能提供一个示例用例吗?

标签: android


【解决方案1】:

R.drawable.my_drawable 是 android 为你的 drawable 自动生成的唯一 id——不需要设置它,如果你需要引用它,常量 R.drawable.my_drawable 可以工作。

【讨论】:

  • 如果我正确解释了 mradlmaier 的问题,他想知道如何设置他在代码中生成的可绘制对象的 ID,例如一个 BitmapDrawable。
  • 那么您的解决方案不正确...BitmapDrawable 没有扩展View 并且没有setId 方法。
  • 删除了我对@hanspeide 的回答,因为他删除了他的。 :)
  • 你是对的。似乎我忽略了 mradlmaier 正在谈论可绘制对象。既然如此,我同意你的回答,并删除了我的。赞成。
  • 这正是我的意思。虽然,如果通过 xml 文件创建,drawables 具有资源 id,但没有方法设置通过代码创建的 drawable 的 id,类似于 View。
猜你喜欢
  • 2023-02-16
  • 2015-06-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-11-26
  • 2018-03-18
相关资源
最近更新 更多