Java 如何在代码中生成视图id?

Java 如何在代码中生成视图id?,java,android,Java,Android,我需要在代码中创建一些视图,并希望为视图分配一个id。如何生成保证在其余视图id中唯一的视图id,但在运行时执行此操作 视图ID不需要在整个应用程序中都是唯一的,而只需要在视图层次结构中。 话虽如此,如果您希望它是唯一的,也许您可以使用它,然后将其传递给。视图ID不需要在整个应用程序中是唯一的,而只需要在视图层次结构中。 话虽如此,如果您希望它是唯一的,也许您可以使用它,然后将其传递给。只是一个想法:我非常确定所有自动生成的资源ID都是正整数,因此您可以简单地将负整数作为ID分配给您在代码中创建

我需要在代码中创建一些视图,并希望为视图分配一个id。如何生成保证在其余视图id中唯一的视图id,但在运行时执行此操作

视图ID不需要在整个应用程序中都是唯一的,而只需要在视图层次结构中。
话虽如此,如果您希望它是唯一的,也许您可以使用它,然后将其传递给。

视图ID不需要在整个应用程序中是唯一的,而只需要在视图层次结构中。
话虽如此,如果您希望它是唯一的,也许您可以使用它,然后将其传递给。

只是一个想法:我非常确定所有自动生成的资源ID都是正整数,因此您可以简单地将负整数作为ID分配给您在代码中创建的任何东西。您甚至可以使用gianpi的
hashCode()
思想,简单地使用结果的倒数。

只是一个想法:我非常确定所有自动生成的资源ID都是正整数,因此您可以简单地将负整数作为ID分配给您在代码中创建的任何内容。您甚至可以使用gianpi的
hashCode()
思想,只需使用结果的倒数。

如果您只需要生成少量固定数量的ID,那么您可以使用一些已经生成的R.string.*ID。这将保证您不会与现有视图ID冲突。

如果您只需要生成少量固定数量的ID,那么您可以使用一些已经生成的R.string.*ID。这应该保证不会与现有视图ID冲突。

使用uuid类。使用uuid类。如果此操作返回与该活动中已定义的视图相同的id,该怎么办?这会导致崩溃吗?我不认为它会崩溃,因为如果在XML中的两个视图上设置相同的ID,那么在R.java中只会获得一次,并且应用程序仍然可以工作(但是,当尝试访问其中一个视图时,可能会出现意外行为,即,我不知道它是否会随机获得其中一个视图或是什么)。然而,我认为可能性接近于零,因为您应该在同一视图层次结构中有一个视图,该视图恰好与另一个视图的hashcode具有相同的id。我最终使用了hashcode,但我还没有遇到任何问题,所以希望一切正常。谢谢如果此操作返回与该活动中已定义的视图相同的id,该怎么办?这会导致崩溃吗?我不认为它会崩溃,因为如果在XML中的两个视图上设置相同的ID,那么在R.java中只会获得一次,并且应用程序仍然可以工作(但是,当尝试访问其中一个视图时,可能会出现意外行为,即,我不知道它是否会随机获得其中一个视图或是什么)。然而,我认为可能性接近于零,因为您应该在同一视图层次结构中有一个视图,该视图恰好与另一个视图的hashcode具有相同的id。我最终使用了hashcode,但我还没有遇到任何问题,所以希望一切正常。谢谢