android.content.res.Resources $ NotFoundException:资源ID#0x0 Android错误 [英] android.content.res.Resources$NotFoundException: Resource ID #0x0 Android error

查看:89
本文介绍了android.content.res.Resources $ NotFoundException:资源ID#0x0 Android错误的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在创建ArrayAdapter的Super类,在其中绑定从对象接收的数据并将其放入TextViews.
代码并不复杂,我已经仔细检查了XML中所有TextView的ID.

I am Creating an ArrayAdapter's Super class in which I am binding the data I receive from the object and put them into the TextViews.
The code is not any complicated and I have double checked the ids of all the TextViews in my XML.

我已经检查了所有其他标题相同的问题.
在这种情况下,它们似乎都不起作用.

And I have checked all the other questions with the same title.
None of them seem to work in this case.

在下面附加我的代码.

Attaching my code below.

public class EarthquakeAdapter extends ArrayAdapter<Earthquake> 
    {
        public EarthquakeAdapter(Context context, int resource) {
            super(context, resource);
        }
        public EarthquakeAdapter(Activity activity, ArrayList<Earthquake> Earthquakes)
        {
            super(activity,0, (List<Earthquake>) Earthquakes);
        }

        @Override
        public View getView(int position, View convertView, ViewGroup parent) {
            super.getView(position, convertView, parent);
            View ListItemView = convertView;
            if(ListItemView == null)
            {
                ListItemView = LayoutInflater.from(getContext()).inflate(
                    R.layout.earthquake_list_item, parent, false);
            }

            Earthquake currentItem = getItem(position);

            TextView magnitude = (TextView) 
            ListItemView.findViewById(R.id.magnitude);
            //Double m = ;
            magnitude.setText(""+currentItem.getmMag());

            TextView location = (TextView) ListItemView.findViewById(R.id.Location);
            location.setText(currentItem.getmLocation());

            TextView date = (TextView) ListItemView.findViewById(R.id.date);
            date.setText(currentItem.getmDate());

            return ListItemView;
        }

,然后是xml文件.

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

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:orientation="horizontal" android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:padding="16dp"
    android:id="@+id/list_view_container">

    <TextView
        android:id="@+id/magnitude"
        android:layout_width="0dp"
        android:layout_height="60dp"
        android:layout_weight="1"
        tools:text="7.6"/>
    <TextView
        android:id="@+id/Location"
        android:layout_width="0dp"
        android:layout_height="60dp"
        android:layout_weight="1"
        tools:text="San Fransisco"/>
    <TextView
        android:id="@+id/date"
        android:layout_width="0dp"
        android:layout_height="60dp"
        android:layout_weight="1"
        tools:text="Date"/>

</LinearLayout>

这是我的地震班.

public class Earthquake 
     {
        private double mMag;
        private String mLocation;
        private String mDate;

        public Earthquake(double Mag, String Location, String Date){
            mMag = Mag;
            mLocation = Location;
            mDate = Date;
        }

        public String getmDate() {
            return mDate;
        }

        public double getmMag() {
            return mMag;
        }

        public String getmLocation() {

            return mLocation;
        }
    }

这是错误日志.

06-11 20:38:36.570 9359-9359/com.example.android.quakereport W/ResourceType: No package identifier when getting value for resource number 0x00000000 06-11 20:38:36.571 9359-9359/com.example.android.quakereport D/AndroidRuntime: Shutting down VM 06-11 20:38:36.581 9359-9359/com.example.android.quakereport E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.example.android.quakereport, PID: 9359
   android.content.res.Resources$NotFoundException: Resource ID #0x0
       at android.content.res.Resources.getValue(Resources.java:1369)
       at android.content.res.MiuiResources.getValue(MiuiResources.java:145)
       at android.content.res.Resources.loadXmlResourceParser(Resources.java:2824)
       at android.content.res.Resources.getLayout(Resources.java:1183)
       at android.view.LayoutInflater.inflate(LayoutInflater.java:425)
       at android.widget.ArrayAdapter.createViewFromResource(ArrayAdapter.java:378)
       at android.widget.ArrayAdapter.getView(ArrayAdapter.java:369)
       at com.example.android.quakereport.EarthquakeAdapter.getView(EarthquakeAdapter.java:28)
       at android.widget.AbsListView.obtainView(AbsListView.java:2346)
       at android.widget.ListView.makeAndAddView(ListView.java:1876)
       at android.widget.ListView.fillDown(ListView.java:702)
       at android.widget.ListView.fillFromTop(ListView.java:763)
       at android.widget.ListView.layoutChildren(ListView.java:1685)
       at android.widget.AbsListView.onLayout(AbsListView.java:2148)
       at android.view.View.layout(View.java:16653)
       at android.view.ViewGroup.layout(ViewGroup.java:5438)
       at android.widget.FrameLayout.layoutChildren(FrameLayout.java:336)
       at android.widget.FrameLayout.onLayout(FrameLayout.java:273)
       at android.view.View.layout(View.java:16653)
       at android.view.ViewGroup.layout(ViewGroup.java:5438)
       at android.support.v7.widget.ActionBarOverlayLayout.onLayout(ActionBarOverlayLayout.java:435)
       at android.view.View.layout(View.java:16653)
       at android.view.ViewGroup.layout(ViewGroup.java:5438)
       at android.widget.FrameLayout.layoutChildren(FrameLayout.java:336)
       at android.widget.FrameLayout.onLayout(FrameLayout.java:273)
       at android.view.View.layout(View.java:16653)
       at android.view.ViewGroup.layout(ViewGroup.java:5438)
       at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1743)
       at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1586)
       at android.widget.LinearLayout.onLayout(LinearLayout.java:1495)
       at android.view.View.layout(View.java:16653)
       at android.view.ViewGroup.layout(ViewGroup.java:5438)
       at android.widget.FrameLayout.layoutChildren(FrameLayout.java:336)
       at android.widget.FrameLayout.onLayout(FrameLayout.java:273)
       at com.android.internal.policy.PhoneWindow$DecorView.onLayout(PhoneWindow.java:2680)
       at android.view.View.layout(View.java:16653)
       at android.view.ViewGroup.layout(ViewGroup.java:5438)
       at android.view.ViewRootImpl.performLayout(ViewRootImpl.java:2198)
       at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1958)
       at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1134)
       at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:6045)
       at android.view.Choreographer$CallbackRecord.run(Choreographer.java:860)
       at android.view.Choreographer.doCallbacks(Choreographer.java:672)
       at android.view.Choreographer.doFrame(Choreographer.java:608)
       at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:846)
       at android.os.Handler.handleCallback(Handler.java:739)
       at android.os.Handler.dispatchMessage(Handler.java:95)
       at android.os.Looper.loop(Looper.java:148)
       at android.app.ActivityThread.main(ActivityThread.java:5441)
       at java.lang.reflect.Method.invoke(Native Method)
       at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:738)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:628)

推荐答案

问题出在EarthquakeAdapter类的getView()方法中 语句super.getView()引起了一些问题.我删除了它,现在可以正常工作了.

The problem is in the getView() method of EarthquakeAdapter class the statement super.getView() was causing some issue. I removed it and its working fine now.

请参阅问题本身中@MikeM的评论.

Refer to the comment of @MikeM in the question itself.

删除getView()中的超级调用.您在三元参数的构造函数中传递了无效的布局资源ID-当ArrayAdapter尝试对其进行充气时,这会导致该异常-而且您也不会使用超级返回,因为您自己在对布局进行充气

这篇关于android.content.res.Resources $ NotFoundException:资源ID#0x0 Android错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆