Android文档介绍ID XML resource
:
在XML中定义的唯一资源ID。[…],您可以将其用作应用程序代码中使用的[…]唯一整数(例如,作为对话框或结果代码的ID)。
我在ids.xml
中创建了request
<item name="request" type="id" />
其值为-1000003
。我想用它作为FragmentActivity
中startActivityForResult
的requestCode
。但正如这里所描述的,requestCode
必须是16位,这意味着范围从0到65535。所以request
的值是无效的(它是负的,也超过了界限范围)。使用它会导致以下错误:
java.lang.IllegalArgumentException: Can only use lower 16 bits for requestCode
虽然我可以使用任意有效整数,但在应用程序维护/开发过程中可能会违反其唯一性。有办法解决这个问题吗?
您的值是负数,但范围仅为正数。这个错误可能是因为这个原因