在布局充气空指针异常 [英] Null Pointer exception on layout inflator

查看:227
本文介绍了在布局充气空指针异常的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想从列表视图延伸片段一类添加到我的布局。问题是,当数据到来,布局是示出空指针异常。这里是code:

TopStoriesFragment.java

 公共类TopStoriesFragment扩展片段{    公共字符串thehindu =htt​​p://www.thehindu.com/news/?service=rss;
    公共字符串TOI =htt​​p://timesofindia.feedsportal.com/c/33039/f/533965/index.rss;
    公共字符串路透社=htt​​p://feeds.reuters.com/reuters/topNews;
    公共字符串deccanherald =htt​​p://www.deccanherald.com/rss-internal/top-stories.rss;
    公共字符串CURRENTURL = thehindu;
    AlertDialog levelDialog;
    公共字符串fakingnews =HTTP://thepuntended.word$p$pss.com/
    公共LayoutInflater吹气;
    ListView控件的ListView;    @覆盖
    公共查看onCreateView(LayoutInflater充气器,容器的ViewGroup,
            捆绑savedInstanceState){        查看rootView = inflater.inflate(R.layout.fragment_top_rated,集装箱,FALSE);        FEEDTITLE =(TextView中)rootView.findViewById(R.id.feedtitle);
        feedDescribtion =(TextView中)rootView.findViewById(R.id.feeddescribtion);        ListView控件=(ListView控件)rootView.findViewById(android.R.id.list);
        listView.setOnItemClickListener(新AdapterView.OnItemClickListener(){
            @覆盖
            公共无效onItemClick(适配器视图<>母公司,视图V,INT位置,长的id){                意向意图=新意图(getActivity(),ShowDetails.class);
                束束=新包();
                bundle.putString(keyTitle,myRssFeed.getItem(位置).getTitle());
                bundle.putString(keyDescription,myRssFeed.getItem(位置)
                        .getDescription());
                bundle.putString(KEYLINK,myRssFeed.getItem(位置).getLink());
                bundle.putString(keyPubdate,myRssFeed.getItem(位置).getPubdate());
                intent.putExtras(包);
                startActivity(意向);            }
        });
        startReadRss();        返回rootView;
    }    公共类RssLoadingTask扩展的AsyncTask<太虚,太虚,太虚> {        @覆盖
        保护无效onPostExecute(虚空结果){
            // TODO自动生成方法存根
            displayRss();
        }        @覆盖
        在preExecute保护无效(){
            // TODO自动生成方法存根
            preReadRss();
        }        @覆盖
        保护无效onProgressUpdate(虚空......值){
            // TODO自动生成方法存根
            // super.onProgressUpdate(值);
        }        @覆盖
        保护无效doInBackground(虚空......为arg0){
            // TODO自动生成方法存根
            readRss();
            返回null;
        }    }    私人的RSSFeed myRssFeed = NULL;    TextView的FEEDTITLE;
    TextView的feedDescribtion;    // TextView的feedPubdate;
    // TextView的feedLink;    公共类MyCustomAdapter扩展ArrayAdapter<&的RSSItem GT; {        公共MyCustomAdapter(上下文的背景下,INT textViewResourceId,
                清单<&的RSSItem GT;名单){
            超(背景下,textViewResourceId,清单);
        }        @覆盖
        公共查看getView(INT位置,查看convertView,父母的ViewGroup){
            // TODO自动生成方法存根
            //返回super.getView(位置,convertView,父母);            查看排= convertView;            如果(行== NULL){
   ---------------------- logcat的错误需要我在这里----------------------- -----
                行= inflater.inflate(R.layout.row,父母,假);
   -------------------------------------------------- -------------------------------
            }            TextView的LISTTITLE =(TextView中)row.findViewById(R.id.listtitle);
            listTitle.setText(myRssFeed.getList()获得(位置).getTitle());
            TextView的listPubdate =(TextView中)一行
                    .findViewById(R.id.listpubdate);
            listPubdate.setText(myRssFeed.getList()获得(位置).getPubdate());            如果(位置%2 == 0){
                listTitle.setBackgroundColor(0xff101010);
                listPubdate.setBackgroundColor(0xff101010);
            }其他{
                listTitle.setBackgroundColor(0xff080808);
                listPubdate.setBackgroundColor(0xff080808);
            }            返回行;
        }
    }    私人无效startReadRss(){
        新RssLoadingTask()执行();
    }    私人无效preReadRss(){
        feedTitle.setText(---等待---);
        feedDescribtion.setText();
        // feedPubdate.setText();
        // feedLink.setText();
        listView.setAdapter(NULL);        Toast.makeText(getActivity(),阅读RSS,请稍候。Toast.LENGTH_LONG)
                。显示();
    }    私人无效readRss(){        尝试{
            网址rssUrl =新的URL(CURRENTURL);
            的SAXParserFactory mySAXParserFactory =的SAXParserFactory
                    .newInstance();
            SAXParser的mySAXParser = mySAXParserFactory.newSAXParser();
            XMLReader的myXMLReader = mySAXParser.getXMLReader();
            位于RSSHandler myRSSHandler =新位于RSSHandler();
            myXMLReader.setContentHandler(myRSSHandler);
            InputSource的myInputSource =新的InputSource(rssUrl.openStream());
            myXMLReader.parse(myInputSource);            myRssFeed = myRSSHandler.getFeed();        }赶上(MalformedURLException的E){
            // TODO自动生成catch块
            e.printStackTrace();
        }赶上(的ParserConfigurationException E){
            // TODO自动生成catch块
            e.printStackTrace();
        }赶上(SAXException的E){
            // TODO自动生成catch块
            e.printStackTrace();
        }赶上(IOException异常五){
            // TODO自动生成catch块
            e.printStackTrace();
        }
    }    私人无效displayRss(){
        如果(myRssFeed!= NULL){
            日历C = Calendar.getInstance();
            //字符串strCurrentTiime =\\ n(雷丁的时间 -
            // + c.get(Calendar.HOUR_OF_DAY)
            // +小时。
            // + c.get(Calendar.MINUTE)+分钟)\\ n+ c.get(Calendar.AM_PM);            SimpleDateFormat的SDF =新的SimpleDateFormat(
                    MMMM-DD-YYYY HH:MM:SS);
            串strCurrentTiime = sdf.format(c.getTime());            feedTitle.setText(myRssFeed.getTitle());
            feedDescribtion.setText(strCurrentTiime);
            // feedPubdate.setText(myRssFeed.getPubdate());
            // feedLink.setText(myRssFeed.getLink());            MyCustomAdapter适配器=新MyCustomAdapter(getActivity(),R.layout.row,
                    myRssFeed.getList());
             listView.setAdapter(适配器);        }
    }}

LogCat中:

  07-03 00:21:38.253:E / AndroidRuntime(27831):致命异常:主要
07-03 00:21:38.253:E / AndroidRuntime(27831):显示java.lang.NullPointerException
07-03 00:21:38.253:E / AndroidRuntime(27831):在akshat.jaiswal.newshelf.TopStoriesFragment $ MyCustomAdapter.getView(TopStoriesFragment.java:129)
07-03 00:21:38.253:E / AndroidRuntime(27831):在android.widget.AbsListView.obtainView(AbsListView.java:2207)
07-03 00:21:38.253:E / AndroidRuntime(27831):在android.widget.ListView.measureHeightOfChildren(ListView.java:1250)
07-03 00:21:38.253:E / AndroidRuntime(27831):在android.widget.ListView.onMeasure(ListView.java:1162)
07-03 00:21:38.253:E / AndroidRuntime(27831):在android.view.View.measure(View.java:15609)
07-03 00:21:38.253:E / AndroidRuntime(27831):在android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:4916)
07-03 00:21:38.253:E / AndroidRuntime(27831):在android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1411)
07-03 00:21:38.253:E / AndroidRuntime(27831):在android.widget.LinearLayout.measureVertical(LinearLayout.java:698)
07-03 00:21:38.253:E / AndroidRuntime(27831):在android.widget.LinearLayout.onMeasure(LinearLayout.java:588)
07-03 00:21:38.253:E / AndroidRuntime(27831):在android.view.View.measure(View.java:15609)
07-03 00:21:38.253:E / AndroidRuntime(27831):在android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:4916)
07-03 00:21:38.253:E / AndroidRuntime(27831):在android.widget.FrameLayout.onMeasure(FrameLayout.java:310)
07-03 00:21:38.253:E / AndroidRuntime(27831):在android.view.View.measure(View.java:15609)
07-03 00:21:38.253:E / AndroidRuntime(27831):在android.support.v4.view.ViewPager.onMeasure(ViewPager.java:1451)
07-03 00:21:38.253:E / AndroidRuntime(27831):在android.view.View.measure(View.java:15609)
07-03 00:21:38.253:E / AndroidRuntime(27831):在android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:4916)
07-03 00:21:38.253:E / AndroidRuntime(27831):在android.widget.FrameLayout.onMeasure(FrameLayout.java:310)
07-03 00:21:38.253:E / AndroidRuntime(27831):在android.view.View.measure(View.java:15609)
07-03 00:21:38.253:E / AndroidRuntime(27831):在android.widget.LinearLayout.measureVertical(LinearLayout.java:850)
07-03 00:21:38.253:E / AndroidRuntime(27831):在android.widget.LinearLayout.onMeasure(LinearLayout.java:588)
07-03 00:21:38.253:E / AndroidRuntime(27831):在android.view.View.measure(View.java:15609)
07-03 00:21:38.253:E / AndroidRuntime(27831):在android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:4916)
07-03 00:21:38.253:E / AndroidRuntime(27831):在android.widget.FrameLayout.onMeasure(FrameLayout.java:310)
07-03 00:21:38.253:E / AndroidRuntime(27831):在com.android.internal.policy.impl.PhoneWindow $ DecorView.onMeasure(PhoneWindow.java:2191)
07-03 00:21:38.253:E / AndroidRuntime(27831):在android.view.View.measure(View.java:15609)
07-03 00:21:38.253:E / AndroidRuntime(27831):在android.view.ViewRootImpl.performMeasure(ViewRootImpl.java:2165)
07-03 00:21:38.253:E / AndroidRuntime(27831):在android.view.ViewRootImpl.measureHierarchy(ViewRootImpl.java:1249)
07-03 00:21:38.253:E / AndroidRuntime(27831):在android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1443)
07-03 00:21:38.253:E / AndroidRuntime(27831):在android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1139)
07-03 00:21:38.253:E / AndroidRuntime(27831):在android.view.ViewRootImpl $ TraversalRunnable.run(ViewRootImpl.java:4879)
07-03 00:21:38.253:E / AndroidRuntime(27831):在android.view.Choreographer $ CallbackRecord.run(Choreographer.java:776)
07-03 00:21:38.253:E / AndroidRuntime(27831):在android.view.Choreographer.doCallbacks(Choreographer.java:579)
07-03 00:21:38.253:E / AndroidRuntime(27831):在android.view.Choreographer.doFrame(Choreographer.java:548)
07-03 00:21:38.253:E / AndroidRuntime(27831):在android.view.Choreographer $ FrameDisplayEventReceiver.run(Choreographer.java:762)
07-03 00:21:38.253:E / AndroidRuntime(27831):在android.os.Handler.handleCallback(Handler.java:725)
07-03 00:21:38.253:E / AndroidRuntime(27831):在android.os.Handler.dispatchMessage(Handler.java:92)
07-03 00:21:38.253:E / AndroidRuntime(27831):在android.os.Looper.loop(Looper.java:153)
07-03 00:21:38.253:E / AndroidRuntime(27831):在android.app.ActivityThread.main(ActivityThread.java:5297)
07-03 00:21:38.253:E / AndroidRuntime(27831):在java.lang.reflect.Method.invokeNative(本机方法)
07-03 00:21:38.253:E / AndroidRuntime(27831):在java.lang.reflect.Method.invoke(Method.java:511)
07-03 00:21:38.253:E / AndroidRuntime(27831):在com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:833)
07-03 00:21:38.253:E / AndroidRuntime(27831):在com.android.internal.os.ZygoteInit.main(ZygoteInit.java:600)
07-03 00:21:38.253:E / AndroidRuntime(27831):在dalvik.system.NativeStart.main(本机方法)

Row.xml

 <?XML版本=1.0编码=UTF-8&GT?;
< LinearLayout中的xmlns:机器人=htt​​p://schemas.android.com/apk/res/android
    机器人:layout_width =FILL_PARENT
    机器人:layout_height =WRAP_CONTENT
    机器人:layout_margin =4DP
    机器人:背景=@机器人:彩色/ darker_gray
    机器人:方向=垂直>
<的TextView
    机器人:ID =@ + ID / LISTTITLE
    机器人:layout_marginTop =1DP
    机器人:layout_width =FILL_PARENT
    机器人:textAppearance =@安卓风格/ TextAppearance.Medium
    机器人:layout_height =WRAP_CONTENT/>
<的TextView
    机器人:ID =@ + ID / listpubdate
    机器人:layout_marginBottom =1DP
    机器人:layout_width =FILL_PARENT
    机器人:layout_height =WRAP_CONTENT
    机器人:textAppearance =@安卓风格/ TextAppearance.Small/>
< / LinearLayout中>


解决方案

您尚未初始化吹气成员变量,您使用的是 getView ()

使用例如 =吹气LayoutInflater.from(上下文)进行初始化。

I am trying to add listview to my layout from a class which extends fragments. The problem is, when the data is coming, the layout is showing null pointer exception. Here is the code:

TopStoriesFragment.java

public class TopStoriesFragment extends Fragment {

    public String thehindu = "http://www.thehindu.com/news/?service=rss";
    public String toi = "http://timesofindia.feedsportal.com/c/33039/f/533965/index.rss";
    public String reuters = "http://feeds.reuters.com/reuters/topNews";
    public String deccanherald = "http://www.deccanherald.com/rss-internal/top-stories.rss";
    public String currenturl = thehindu;
    AlertDialog levelDialog;
    public String fakingnews = "http://thepuntended.wordpress.com/";
    public LayoutInflater inflater;
    ListView listView;

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) {

        View rootView = inflater.inflate(R.layout.fragment_top_rated, container, false);

        feedTitle = (TextView) rootView.findViewById(R.id.feedtitle);
        feedDescribtion = (TextView) rootView.findViewById(R.id.feeddescribtion);

        listView = (ListView) rootView.findViewById(android.R.id.list);
        listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> parent, View v, int position, long id) {

                Intent intent = new Intent(getActivity(), ShowDetails.class);
                Bundle bundle = new Bundle();
                bundle.putString("keyTitle", myRssFeed.getItem(position).getTitle());
                bundle.putString("keyDescription", myRssFeed.getItem(position)
                        .getDescription());
                bundle.putString("keyLink", myRssFeed.getItem(position).getLink());
                bundle.putString("keyPubdate", myRssFeed.getItem(position).getPubdate());
                intent.putExtras(bundle);
                startActivity(intent);

            }
        });
        startReadRss();

        return rootView;
    }

    public class RssLoadingTask extends AsyncTask<Void, Void, Void> {

        @Override
        protected void onPostExecute(Void result) {
            // TODO Auto-generated method stub
            displayRss();
        }

        @Override
        protected void onPreExecute() {
            // TODO Auto-generated method stub
            preReadRss();
        }

        @Override
        protected void onProgressUpdate(Void... values) {
            // TODO Auto-generated method stub
            // super.onProgressUpdate(values);
        }

        @Override
        protected Void doInBackground(Void... arg0) {
            // TODO Auto-generated method stub
            readRss();
            return null;
        }

    }

    private RSSFeed myRssFeed = null;

    TextView feedTitle;
    TextView feedDescribtion;

    // TextView feedPubdate;
    // TextView feedLink;

    public class MyCustomAdapter extends ArrayAdapter<RSSItem> {

        public MyCustomAdapter(Context context, int textViewResourceId,
                List<RSSItem> list) {
            super(context, textViewResourceId, list);
        }

        @Override
        public View getView(int position, View convertView, ViewGroup parent) {
            // TODO Auto-generated method stub
            // return super.getView(position, convertView, parent);

            View row = convertView;

            if (row == null) {
   ---------------------- Logcat error takes me here----------------------------
                row = inflater.inflate(R.layout.row, parent, false);
   ---------------------------------------------------------------------------------
            }

            TextView listTitle = (TextView) row.findViewById(R.id.listtitle);
            listTitle.setText(myRssFeed.getList().get(position).getTitle());
            TextView listPubdate = (TextView) row
                    .findViewById(R.id.listpubdate);
            listPubdate.setText(myRssFeed.getList().get(position).getPubdate());

            if (position % 2 == 0) {
                listTitle.setBackgroundColor(0xff101010);
                listPubdate.setBackgroundColor(0xff101010);
            } else {
                listTitle.setBackgroundColor(0xff080808);
                listPubdate.setBackgroundColor(0xff080808);
            }

            return row;
        }
    }

    private void startReadRss() {
        new RssLoadingTask().execute();
    }

    private void preReadRss() {
        feedTitle.setText("--- wait ---");
        feedDescribtion.setText("");
        // feedPubdate.setText("");
        // feedLink.setText("");
        listView.setAdapter(null);

        Toast.makeText(getActivity(), "Reading RSS, Please wait.", Toast.LENGTH_LONG)
                .show();
    }

    private void readRss() {

        try {
            URL rssUrl = new URL(currenturl);
            SAXParserFactory mySAXParserFactory = SAXParserFactory
                    .newInstance();
            SAXParser mySAXParser = mySAXParserFactory.newSAXParser();
            XMLReader myXMLReader = mySAXParser.getXMLReader();
            RSSHandler myRSSHandler = new RSSHandler();
            myXMLReader.setContentHandler(myRSSHandler);
            InputSource myInputSource = new InputSource(rssUrl.openStream());
            myXMLReader.parse(myInputSource);

            myRssFeed = myRSSHandler.getFeed();

        } catch (MalformedURLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (ParserConfigurationException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (SAXException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }

    private void displayRss() {
        if (myRssFeed != null) {
            Calendar c = Calendar.getInstance();
            // String strCurrentTiime = "\n(Time of Reading - "
            // + c.get(Calendar.HOUR_OF_DAY)
            // + " Hrs. : "
            // + c.get(Calendar.MINUTE) + " Mins.)\n" +c.get(Calendar.AM_PM);

            SimpleDateFormat sdf = new SimpleDateFormat(
                    "MMMM-dd-yyyy HH:mm:ss a");
            String strCurrentTiime = sdf.format(c.getTime());

            feedTitle.setText(myRssFeed.getTitle());
            feedDescribtion.setText(strCurrentTiime);
            // feedPubdate.setText(myRssFeed.getPubdate());
            // feedLink.setText(myRssFeed.getLink());

            MyCustomAdapter adapter = new MyCustomAdapter(getActivity(), R.layout.row,
                    myRssFeed.getList());
             listView.setAdapter(adapter);

        }
    }

}

LogCat:

07-03 00:21:38.253: E/AndroidRuntime(27831): FATAL EXCEPTION: main
07-03 00:21:38.253: E/AndroidRuntime(27831): java.lang.NullPointerException
07-03 00:21:38.253: E/AndroidRuntime(27831):    at akshat.jaiswal.newshelf.TopStoriesFragment$MyCustomAdapter.getView(TopStoriesFragment.java:129)
07-03 00:21:38.253: E/AndroidRuntime(27831):    at android.widget.AbsListView.obtainView(AbsListView.java:2207)
07-03 00:21:38.253: E/AndroidRuntime(27831):    at android.widget.ListView.measureHeightOfChildren(ListView.java:1250)
07-03 00:21:38.253: E/AndroidRuntime(27831):    at android.widget.ListView.onMeasure(ListView.java:1162)
07-03 00:21:38.253: E/AndroidRuntime(27831):    at android.view.View.measure(View.java:15609)
07-03 00:21:38.253: E/AndroidRuntime(27831):    at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:4916)
07-03 00:21:38.253: E/AndroidRuntime(27831):    at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1411)
07-03 00:21:38.253: E/AndroidRuntime(27831):    at android.widget.LinearLayout.measureVertical(LinearLayout.java:698)
07-03 00:21:38.253: E/AndroidRuntime(27831):    at android.widget.LinearLayout.onMeasure(LinearLayout.java:588)
07-03 00:21:38.253: E/AndroidRuntime(27831):    at android.view.View.measure(View.java:15609)
07-03 00:21:38.253: E/AndroidRuntime(27831):    at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:4916)
07-03 00:21:38.253: E/AndroidRuntime(27831):    at android.widget.FrameLayout.onMeasure(FrameLayout.java:310)
07-03 00:21:38.253: E/AndroidRuntime(27831):    at android.view.View.measure(View.java:15609)
07-03 00:21:38.253: E/AndroidRuntime(27831):    at android.support.v4.view.ViewPager.onMeasure(ViewPager.java:1451)
07-03 00:21:38.253: E/AndroidRuntime(27831):    at android.view.View.measure(View.java:15609)
07-03 00:21:38.253: E/AndroidRuntime(27831):    at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:4916)
07-03 00:21:38.253: E/AndroidRuntime(27831):    at android.widget.FrameLayout.onMeasure(FrameLayout.java:310)
07-03 00:21:38.253: E/AndroidRuntime(27831):    at android.view.View.measure(View.java:15609)
07-03 00:21:38.253: E/AndroidRuntime(27831):    at android.widget.LinearLayout.measureVertical(LinearLayout.java:850)
07-03 00:21:38.253: E/AndroidRuntime(27831):    at android.widget.LinearLayout.onMeasure(LinearLayout.java:588)
07-03 00:21:38.253: E/AndroidRuntime(27831):    at android.view.View.measure(View.java:15609)
07-03 00:21:38.253: E/AndroidRuntime(27831):    at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:4916)
07-03 00:21:38.253: E/AndroidRuntime(27831):    at android.widget.FrameLayout.onMeasure(FrameLayout.java:310)
07-03 00:21:38.253: E/AndroidRuntime(27831):    at com.android.internal.policy.impl.PhoneWindow$DecorView.onMeasure(PhoneWindow.java:2191)
07-03 00:21:38.253: E/AndroidRuntime(27831):    at android.view.View.measure(View.java:15609)
07-03 00:21:38.253: E/AndroidRuntime(27831):    at android.view.ViewRootImpl.performMeasure(ViewRootImpl.java:2165)
07-03 00:21:38.253: E/AndroidRuntime(27831):    at android.view.ViewRootImpl.measureHierarchy(ViewRootImpl.java:1249)
07-03 00:21:38.253: E/AndroidRuntime(27831):    at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1443)
07-03 00:21:38.253: E/AndroidRuntime(27831):    at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1139)
07-03 00:21:38.253: E/AndroidRuntime(27831):    at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:4879)
07-03 00:21:38.253: E/AndroidRuntime(27831):    at android.view.Choreographer$CallbackRecord.run(Choreographer.java:776)
07-03 00:21:38.253: E/AndroidRuntime(27831):    at android.view.Choreographer.doCallbacks(Choreographer.java:579)
07-03 00:21:38.253: E/AndroidRuntime(27831):    at android.view.Choreographer.doFrame(Choreographer.java:548)
07-03 00:21:38.253: E/AndroidRuntime(27831):    at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:762)
07-03 00:21:38.253: E/AndroidRuntime(27831):    at android.os.Handler.handleCallback(Handler.java:725)
07-03 00:21:38.253: E/AndroidRuntime(27831):    at android.os.Handler.dispatchMessage(Handler.java:92)
07-03 00:21:38.253: E/AndroidRuntime(27831):    at android.os.Looper.loop(Looper.java:153)
07-03 00:21:38.253: E/AndroidRuntime(27831):    at android.app.ActivityThread.main(ActivityThread.java:5297)
07-03 00:21:38.253: E/AndroidRuntime(27831):    at java.lang.reflect.Method.invokeNative(Native Method)
07-03 00:21:38.253: E/AndroidRuntime(27831):    at java.lang.reflect.Method.invoke(Method.java:511)
07-03 00:21:38.253: E/AndroidRuntime(27831):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:833)
07-03 00:21:38.253: E/AndroidRuntime(27831):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:600)
07-03 00:21:38.253: E/AndroidRuntime(27831):    at dalvik.system.NativeStart.main(Native Method)

Row.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_margin="4dp"
    android:background="@android:color/darker_gray"
    android:orientation="vertical">
<TextView
    android:id="@+id/listtitle"
    android:layout_marginTop="1dp"
    android:layout_width="fill_parent"
    android:textAppearance="@android:style/TextAppearance.Medium"
    android:layout_height="wrap_content"/>
<TextView
    android:id="@+id/listpubdate"
    android:layout_marginBottom="1dp"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:textAppearance="@android:style/TextAppearance.Small"/>
</LinearLayout>

解决方案

You have not initialized your inflater member variable you're using in getView().

Use e.g. inflater = LayoutInflater.from(context) to initialize it.

这篇关于在布局充气空指针异常的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

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