我使用了常量
private int SOME_GEN_ID = 1;
startActivityForResult(intent , SOME_GEN_ID);
而不是使用/res/values/integers.xml中定义的整数作为startActivtyForResult()
的参数
startActivityForResult(intent , R.integer.some_gen_id);
通过使用常量,它解决了错误:
"Can only use lower 16 bits for requestCode"
但是,我想知道这个问题是否已经解决,或者在使用FragmentActivty
时是否所有整数资源都解析为大整数?
原始问题报告HERE
答案 0 :(得分:2)
R.integer.some_gen_id
不是整数资源的值。它是整数资源的 ID 。 ID是32位值。如果您想要整数资源的值,请使用getResources().getInteger(R.integer.some_gen_id)
。