android - 找不到资源 ID?登录猫

标签 android android-resources android-logcat forceclose

对,这让我很抓狂,我需要解决它,因为它一直在发生。

基本上,当我从 eclipse 启动应用程序到我的手机时,它不会打开,它只是强制关闭并且它正在这样做,因为 LogCat 说尽管它确实找到了资源 ID 但它没有找到。

我已尽一切努力让它发挥作用,但为了防止我错过了一个技巧,我想问你很多!

谢谢

哦,这是日志

  05-13 22:56:01.291: E/AndroidRuntime(27580): FATAL EXCEPTION: main
    05-13 22:56:01.291: E/AndroidRuntime(27580): Process: com.simplistic.floating_equalizerpro, PID: 27580
05-13 22:56:01.291: E/AndroidRuntime(27580): android.content.res.Resources$NotFoundException: Resource ID #0x7f070008 type #0x12 is not valid
  05-13 22:56:01.291: E/AndroidRuntime(27580):  at android.content.res.Resources.loadXmlResourceParser(Resources.java:3231)
   05-13 22:56:01.291: E/AndroidRuntime(27580):     at android.content.res.XResources.loadXmlResourceParser(XResources.java:566)
    05-13 22:56:01.291: E/AndroidRuntime(27580):    at android.content.res.Resources.getLayout(Resources.java:1825)
    05-13 22:56:01.291: E/AndroidRuntime(27580):    at android.view.LayoutInflater.inflate(LayoutInflater.java:396)
 05-13 22:56:01.291: E/AndroidRuntime(27580):   at android.view.LayoutInflater.inflate(LayoutInflater.java:354)
 05-13 22:56:01.291: E/AndroidRuntime(27580):   at android.view.View.inflate(View.java:18366)
  05-13 22:56:01.291: E/AndroidRuntime(27580):  at com.simplistic.floating_equalizerpro.ui.EqualizerFragment.initUi(EqualizerFragment.java:115)
   05-13 22:56:01.291: E/AndroidRuntime(27580):     at com.simplistic.floating_equalizerpro.ui.EqualizerFragment.onViewCreated(EqualizerFragment.java:170)
  05-13 22:56:01.291: E/AndroidRuntime(27580):  at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:952)
 05-13 22:56:01.291: E/AndroidRuntime(27580):   at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1115)
  05-13 22:56:01.291: E/AndroidRuntime(27580):  at android.support.v4.app.BackStackRecord.run(BackStackRecord.java:682)
  05-13 22:56:01.291: E/AndroidRuntime(27580):  at android.support.v4.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1478)
   05-13 22:56:01.291: E/AndroidRuntime(27580):     at android.support.v4.app.FragmentManagerImpl.executePendingTransactions(FragmentManager.java:478)
05-13 22:56:01.291: E/AndroidRuntime(27580):    at android.support.v4.app.FragmentPagerAdapter.finishUpdate(FragmentPagerAdapter.java:141)
05-13 22:56:01.291: E/AndroidRuntime(27580):    at android.support.v4.view.ViewPager.populate(ViewPager.java:1068)
05-13 22:56:01.291: E/AndroidRuntime(27580):    at android.support.v4.view.ViewPager.populate(ViewPager.java:914)
 05-13 22:56:01.291: E/AndroidRuntime(27580):   at android.support.v4.view.ViewPager.onMeasure(ViewPager.java:1436)
 05-13 22:56:01.291: E/AndroidRuntime(27580):   at android.view.View.measure(View.java:17387)
 05-13 22:56:01.291: E/AndroidRuntime(27580):   at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5352)
 05-13 22:56:01.291: E/AndroidRuntime(27580):   at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1410)
 05-13 22:56:01.291: E/AndroidRuntime(27580):   at android.widget.LinearLayout.measureVertical(LinearLayout.java:695)
 05-13 22:56:01.291: E/AndroidRuntime(27580):   at android.widget.LinearLayout.onMeasure(LinearLayout.java:588)
 05-13 22:56:01.291: E/AndroidRuntime(27580):   at android.view.View.measure(View.java:17387)
 05-13 22:56:01.291: E/AndroidRuntime(27580):   at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5352)
  05-13 22:56:01.291: E/AndroidRuntime(27580):  at android.widget.FrameLayout.onMeasure(FrameLayout.java:310)
  05-13 22:56:01.291: E/AndroidRuntime(27580):  at android.view.View.measure(View.java:17387)
  05-13 22:56:01.291: E/AndroidRuntime(27580):  at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5352)
 05-13 22:56:01.291: E/AndroidRuntime(27580):   at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1410)
   05-13 22:56:01.291: E/AndroidRuntime(27580):     at android.widget.LinearLayout.measureVertical(LinearLayout.java:695)
05-13 22:56:01.291: E/AndroidRuntime(27580):    at android.widget.LinearLayout.onMeasure(LinearLayout.java:588)
  05-13 22:56:01.291: E/AndroidRuntime(27580):  at android.view.View.measure(View.java:17387)
   05-13 22:56:01.291: E/AndroidRuntime(27580):     at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5352)
    05-13 22:56:01.291: E/AndroidRuntime(27580):    at android.widget.FrameLayout.onMeasure(FrameLayout.java:310)
 05-13 22:56:01.291: E/AndroidRuntime(27580):   at android.view.View.measure(View.java:17387)
 05-13 22:56:01.291: E/AndroidRuntime(27580):   at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5352)
 05-13 22:56:01.291: E/AndroidRuntime(27580):   at android.widget.FrameLayout.onMeasure(FrameLayout.java:310)
 05-13 22:56:01.291: E/AndroidRuntime(27580):   at android.view.View.measure(View.java:17387)
  05-13 22:56:01.291: E/AndroidRuntime(27580):  at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5352)
 05-13 22:56:01.291: E/AndroidRuntime(27580):   at android.widget.FrameLayout.onMeasure(FrameLayout.java:310)
  05-13 22:56:01.291: E/AndroidRuntime(27580):  at com.android.internal.policy.impl.PhoneWindow$DecorView.onMeasure(PhoneWindow.java:2533)
   05-13 22:56:01.291: E/AndroidRuntime(27580):     at android.view.View.measure(View.java:17387)
   05-13 22:56:01.291: E/AndroidRuntime(27580):     at android.view.ViewRootImpl.performMeasure(ViewRootImpl.java:2211)
    05-13 22:56:01.291: E/AndroidRuntime(27580):    at android.view.ViewRootImpl.measureHierarchy(ViewRootImpl.java:1325)
   05-13 22:56:01.291: E/AndroidRuntime(27580):     at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1547)
   05-13 22:56:01.291: E/AndroidRuntime(27580):     at   android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1234)
    05-13 22:56:01.291: E/AndroidRuntime(27580):    at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:6465)
   05-13 22:56:01.291: E/AndroidRuntime(27580):     at android.view.Choreographer$CallbackRecord.run(Choreographer.java:803)
    05-13 22:56:01.291: E/AndroidRuntime(27580):    at android.view.Choreographer.doCallbacks(Choreographer.java:603)
   05-13 22:56:01.291: E/AndroidRuntime(27580):     at android.view.Choreographer.doFrame(Choreographer.java:573)
   05-13 22:56:01.291: E/AndroidRuntime(27580):     at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:789)
 05-13 22:56:01.291: E/AndroidRuntime(27580):   at android.os.Handler.handleCallback(Handler.java:733)
   05-13 22:56:01.291: E/AndroidRuntime(27580):     at android.os.Handler.dispatchMessage(Handler.java:95)
  05-13 22:56:01.291: E/AndroidRuntime(27580):  at android.os.Looper.loop(Looper.java:157)
  05-13 22:56:01.291: E/AndroidRuntime(27580):  at android.app.ActivityThread.main(ActivityThread.java:5356)
  05-13 22:56:01.291: E/AndroidRuntime(27580):  at java.lang.reflect.Method.invokeNative(Native Method)
   05-13 22:56:01.291: E/AndroidRuntime(27580):     at java.lang.reflect.Method.invoke(Method.java:515)
 05-13 22:56:01.291: E/AndroidRuntime(27580):   at com.android.internal.os.ZygoteInit$Me



    protected void initUi() {
    this.mEqualizerEnabled = (CheckBox) getView()
            .findViewById(R.id.equalizer_enabled);
    this.mBandsContainer = (LinearLayout) getView()
            .findViewById(R.id.equalizer);
    this.mMaxBandLevel = EqualizerApi.getMaxBandLevelRange();
    this.mMinBandLevel = EqualizerApi.getMinBandLevelRange();
    this.mBandsCount = EqualizerApi.getNumberOfBands();
    Integer integer = (this.mMaxBandLevel - this.mMinBandLevel);
    for (int i = 0; i < this.mBandsCount; ++i) {
        inflate = View.inflate(getActivity(), R.id.equalizer_bands, mBandsContainer);
    }
    for (int j = 0; j < this.mBandsCount; ++j) {
        VerticalSeekBar verticalSeekBar = this.getBandByIndex(j);
        verticalSeekBar.setMax(integer.intValue());
        verticalSeekBar.setId(j);
    }
    for (int k = 0; k < this.mBandsCount; ++k) {
        this.getBandTitleByIndex(k).setText(
                (this.getFreqValue(EqualizerApi.getBandFreq(k))));
    }
}

最佳答案

这些是我能想到的可能的错误:

1- 在您的 layout.xml 中,您有一个这样的元素:

  <View    
   android:id="@+id/your_id"
   android:layout_width="match_parent"
   android:layout_height="match_parent" />

但是你有这个:

  <View    
   android:id="@id/your_id"
   android:layout_width="match_parent"
   android:layout_height="match_parent" />

所以... your_id 元素没有添加到 R.java,这就是问题所在。

2- 你正在使用 RelativeLayout 并且你正在做这样的事情:

  <TextView
   android:id="@+id/your_id"
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:layout_centerVertical="true"
   android:layout_toLeftOf="@id/other_id"
   android:layout_toRightOf="@id/other_id2"
   android:visibility="invisible" >
  </TextView>

但是 other_id 或/和 other_id2 元素不存在,这就是问题所在。

3- 也许您的引用有误,例如......在您应该调用 R.layout.my_layout 时调用了 R.id.my_layout 或反之亦然。

也许我遗漏了一些案例,但这些是目前我能想象到的问题。

如果仍然无法解决问题,那么您应该搜索错误的资源。

  1. 在 Eclipse 中,打开“gen”文件夹
  2. 在该文件夹中,您会看到一个包 (我认为是 com.simplistic.floating_equalizerpro),展开它
  3. 打开 R.java 文件
  4. (CMD + F) 或 (CTRL + F) 并搜索 ID #0x7f070008
  5. 注意资源名称,您应该知道您在代码中的哪个位置 使用该资源...并修复它。

关于android - 找不到资源 ID?登录猫,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23642370/

相关文章:

android-webview - Android : Logcat is not working for JS console. log()

android - 当似乎有大量可用堆空间时,小分配会出现 OutOfMemoryError

css - 如何在 Android 浏览器中实现平滑(硬件加速)转换?

android - 我的 Activity 无法连接到网站并使用 volley 显示 JSON 数据

android - Assets 文件夹未添加到 Android Studio 项目和 APK

android - 将mp3储存在Android原始资料夹的子目录中。我有200多种声音

android - 使用数据绑定(bind)设置千位分隔符格式

java - Eclipse (Android) 中的 UML 图

java - Android:如何使用 ffmpeg 叠加视频和音频?

java - 开发 Android 条码扫描仪时出现 LogCat 错误