[英]Custom Listview not responding to listener after activity destroyed
我有一個BaseActivity,它通過充當Fragment的觸摸偵聽器的中央控制器來處理Fragment過渡。 片段之一是自定義的Listview,它將使BaseActivity在點擊時顯示新的片段。 當從頭開始創建Activity時,此方法有效,但是當Activity被銷毀時(通過Dev選項“ Do n't Keep Activity”或通過內存清理),我遇到了問題。
我已經通過日志驗證,當活動從被破壞開始時,我正在設置Fragment的偵聽器,但是點擊Listview不會過渡到新的Fragment。 我還嘗試查看這是否是一個重點問題,但是將android:descendantFocusability="blocksDescendants"
放在Listview布局xml中也無法解決問題。
創建片段時將設置偵聽器,它是活動啟動時實例化的第一個片段。 任何見解將不勝感激!
我將添加一個答案,以更輕松地為您提供幫助。 第一件事是您的偵聽器應設置在片段的onAttach
:
@Override
public void onAttach(Context context) {
// here, your context is also your activity
super.onAttach(context);
if (context instanceof YourListener) {
this.fragmentListener = (YourListener) context;
}
}
請更改此設置,然后檢查是否有所更改!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.