2012-01-02 64 views
6

我將ViewFlipper膨脹從佈局資源添加到ListView作爲Footer。這是我的腳蹼佈局(詳細略去了):活動已泄露IntentReceiver android.widget.ViewFlipper

<?xml version="1.0" encoding="utf-8"?> 
<ViewFlipper ...> 
    <Button 
     /> 
    <LinearLayout 
     ... > 
     <ProgressBar 
      ... /> 
     <TextView 
      ... /> 
    </LinearLayout> 
</ViewFlipper> 

我用它添加到我的ListView:

mListView.addFooterView(mLoadMoreFlipper); 

當我的活動被破壞我看到下面的消息,接着調用堆棧,在logcat中:

Activity com.gk.ItemListActivity has leaked IntentReceiver [email protected] 
that was originally registered here. Are you missing a call to unregisterReceiver()? 

我做了一些挖了一圈,發現了消息與不註銷接收器,但我還沒有註冊任何。奇怪的是,只有在銷燬前從ListView中刪除了頁腳ViewFlipper(通過使用後退按鈕)纔會顯示此消息。我取下頁腳當我不再需要它利用:

mListView.removeFooterView(mLoadMoreFlipper); 

我一直在使用一個WeakReferenceViewFlipper嘗試,但沒有幫助。我也嘗試設置mLoadMoreFlipper參考null但這也沒有幫助。

有沒有人遇到過這個問題?這似乎與我的活動在ViewFlipperListView脫離後引用ViewFlipper有關,但我不知道如何明確銷燬ViewFlipper

+0

我沒有看到任何會導致代碼在這裏的任何事情。您是否註冊了與頁腳內容有關的任何其他回調或監聽器? – 2012-02-02 00:52:56

回答

相關問題