Android - 动态分配和检索ID

Mr.*_*Mr. 1 android android-widget android-layout

我知道如何通过调用动态地分配ID setID().由于ID是唯一的,我曾经使用ids.xmlsetID()从预先生成的ID池中传递给ID.

问题1:有没有办法在不使用的情况下分配ID,ids.xml因为我无法预测运行时需要多少ID?

我试图绕过问题1中提出的第一个问题,动态分配每个基于其标签的哈希值的ID(每个标签都是唯一的),但没有办法保证ID不会与ID的自动生成冲突R.java.

问题1.1:如何解决ID命名冲突?

问题2:假设我具有动态分配和生成的ID值.由于未出现上述ID R.id,findViewById()因此不适用于检索视图.因此,当ID已知时,如何检索视图?

答案2:只有在onCreate()返回控制(终止)后,才能通过相应的ID检索视图.

Xia*_*ang 8

从API级别17开始,您可以通过调用获取新的ID

View.generateViewId()
Run Code Online (Sandbox Code Playgroud)

细节在这里.