gpt4 book ai didi

安卓资源$NotFoundException : Resource ID #0x0 Issue

转载 作者:行者123 更新时间:2023-11-29 00:31:43 26 4
gpt4 key购买 nike

我在我设置的类中遇到了这个错误,我是 android 开发的新手,希望能在 eclipse 中找到如何调试这个错误。我看过很多关于这个问题的堆栈溢出帖子,但没有一个能帮助我解决问题。

public class LeftRightSliderFragmentController extends BaseSliderFragmentController
{
public LeftRightSliderFragmentController()
{
super();
}
public LeftRightSliderFragmentController(int titleRes)
{

super(R.string.left_and_right);
}

在我的 strings.xml 中

我有

<?xml version="1.0" encoding="utf-8"?>
<resources>

<string name="app_name">SliderExample</string>
<string name="action_settings">Settings</string>
<string name="hello_world">Hello world!</string>
<string name="left_and_right">Left and Right</string>
</resources>

在我的基类中

public class BaseSliderFragmentController extends SlidingFragmentActivity
{

private int mTitleRes;
protected RSSFeedFragmentController mFrag;

public BaseSliderFragmentController(int titleRes)
{
mTitleRes = titleRes;
}

public BaseSliderFragmentController()
{
// TODO Auto-generated constructor stub
}

@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
//New Change EDIT
String h = "Hello"
setTitle(h);

基本上我不确定为什么会出现这个问题,我也不确定这个问题出现在哪里。我想知道是否有一种方法可以调试到发生这种情况的代码行,以便我进行调查。我相信这可能与 setTitle 有关?

03-06 02:58:04.195: E/AndroidRuntime(4879): FATAL EXCEPTION: main
03-06 02:58:04.195: E/AndroidRuntime(4879): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.sliderexample/com.example.sliderexample.FragmentControllers.LeftRightSliderFragmentController}: android.content.res.Resources$NotFoundException: String resource ID #0x0
03-06 02:58:04.195: E/AndroidRuntime(4879): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2088)
03-06 02:58:04.195: E/AndroidRuntime(4879): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2113)
03-06 02:58:04.195: E/AndroidRuntime(4879): at android.app.ActivityThread.access$700(ActivityThread.java:139)
03-06 02:58:04.195: E/AndroidRuntime(4879): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1224)

编辑:在代码中进行了更改 new result new Error

03-06 03:33:05.034: E/AndroidRuntime(6336): 致命异常: main03-06 03:33:05.034: E/AndroidRuntime(6336): java.lang.RuntimeException: 无法启动 Activity ComponentInfo{com.example.sliderexample/com.example.sliderexample.FragmentControllers.LeftRightSliderFragmentController}: android.content.res .Resources$NotFoundException: 资源 ID #0xa

问题是我不知道这个错误发生在哪里有人知道如何使用调试器到达那一行吗?....我还在堆栈上搜索了这个似乎没有任何东西可以帮助我。

最佳答案

您的带参数的构造函数永远不会被调用。所以 mTitleRes 等于 0,android 找不到这个资源。您不应使用构造函数将参数传递给 Activity 。只会调用默认构造函数。您应该在基础 Activity 中使用默认值初始化 mTitleRes,或者将基础 Activity 抽象化,创建抽象方法 getTitleRes(),并在 LeftRightSliderFragmentController 中覆盖它。然后使用 setTitle(getTitleRes())。或者只是用后代中的其他值初始化 mTitleRes。一切都取决于您如何使用此 Activity 。无论如何,当创建 Activity 时,不会调用 LeftRightSliderFragmentController(int titleRes)。

关于安卓资源$NotFoundException : Resource ID #0x0 Issue,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15242071/

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