gpt4 book ai didi

java - 从 XML 文件加载 requestCode

转载 作者:行者123 更新时间:2023-12-02 11:45:42 26 4
gpt4 key购买 nike

我遇到了问题,但不知道如何解决:

我想在 AndroidStudio 中启动一个结果 Activity ,因此之前我使用 startActivityForResult(intent,1); 并且一切正常。

但是随着我的项目变得越来越大,很难跟踪已经使用的 requestCode,所以我想将它们全部保留在一个位置。

因此我尝试了这个:

startActivityForResult(intent, R.integer.request_code_for_something);

xml 标签如下所示:

<item name="request_code_for_something" type="integer"> 1 </item>

到目前为止,一切都很好。一切都已正确加载,但是当我到达“startActivityForResult”语句时,会引发以下异常:

java.lang.IllegalArgumentException: Can only use lower 16 bits for requestCode
at android.support.v4.app.BaseFragmentActivityApi14.checkForValidRequestCode(BaseFragmentActivityApi14.java:79)
at android.support.v4.app.FragmentActivity.startActivityForResult(FragmentActivity.java:717)
at company_name.project_name.someClass.someFunction(someClass.java:565)
at android.view.View.performClick(View.java:5640)
at android.view.View$PerformClick.run(View.java:22455)
at android.os.Handler.handleCallback(Handler.java:751)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:154)
at android.app.ActivityThread.main(ActivityThread.java:6165)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:888)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:778)

我错过了什么,还是这根本不可能?

编辑:我知道我不能使用高于 32.767 的值,但这并不能解决问题。

提前致谢。

最佳答案

R.integer.request_code_for_something 不会返回 xml 中设置的整数使用。相反,它为您提供 R 类中指定的整数。

public static final int request_code_for_something=0x7f040003;

获取资源值。使用 getResource()

getResources().getInteger(R.integer.request_code_for_something)

关于java - 从 XML 文件加载 requestCode,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48218237/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com