我得到的只是一个空指针,对我来说毫无意义

    new Handler().post(new Runnable(){
        @Override
        public void run(){
            cursorAdapter = new CustomCursorAdapter(MainActivity.this, contactDBHelper.listAll());

            View footer = (View)getLayoutInflater().inflate(R.layout.footer,null);
            contactCounter = (TextView)findViewById(R.id.contactCounter);

            //This is where im getting a NullPointer
            contactCounter.setText("Hi");

            listView.addFooterView(footer);

            listView.setAdapter(cursorAdapter);
        }
    });
}


谁能发现我做错了什么?

最佳答案

您正在尝试在错误的父视图上找到页脚视图。

目前,您发布的代码正在尝试在基本视图中查找“ contactCounter”,这不是您想要的。您想在页脚视图中找到“ contactCounter”视图。

更改此行:

contactCounter = (TextView)findViewById(R.id.contactCounter);




contactCounter = (TextView)footer.findViewById(R.id.contactCounter);


它应该可以按您的意愿工作。

08-06 11:43