3

重複の可能性:
フッター ビューを削除するときにアダプター クラスのキャスト例外が発生しますか?

ログは次のとおりです。

java.lang.ClassCastException: com.test.MyAdapter cannot be caste to  android.widget.HeaderViewListAdapter
at android.widget.ListView.removeFooterView(ListView.java:387)
at com.test.MyActivity.removeFooterViews()

MyAdapter は MultiList アダプターです。フッターを削除することと、アダプターを android.widget.HeaderViewListAdapter にキャストすることに何の関係があるのか​​、よくわかりませんか? これはどこから来たのですか?

MyActivity.removeFooterViews() で起こることはすべてここにあります

       if (myFooterView != null)
        {    
                   myListView.removeFooterView(myFooterView);  
        }
4

1 に答える 1

4

例外メッセージだけでなく、これにつながるコードを確認できますか?私が推測しなければならないとしたら、あなたはの線に沿って何かを呼び出して、あなたがしたときに使用されたタイプListView.getAdapter()に返されたものをキャストしていると言うでしょう。ListAdapterListView.setAdapter()

これはよくある間違いです。ただし、ヘッダーとフッターをサポートするために内部でアダプターを使用するためListAdapter、設定したものが返されるものと同じではないことを覚えておくことが重要です。ListView

于 2012-10-04T00:12:21.173 に答える