Clear delayed

pull/206/head
M66B 3 years ago
parent 2b305ec7f1
commit 4f2b0995bf

@ -766,19 +766,24 @@ abstract class ActivityBase extends AppCompatActivity implements SharedPreferenc
@Override
public void onFragmentDestroyed(@NonNull FragmentManager fm, @NonNull Fragment f) {
log(fm, f, "onFragmentDestroyed");
try {
for (Field field : f.getClass().getDeclaredFields()) {
Class<?> type = field.getType();
if (View.class.isAssignableFrom(type) ||
RecyclerView.Adapter.class.isAssignableFrom(type)) {
Log.i("Clearing " + f.getClass().getSimpleName() + ":" + field.getName());
field.setAccessible(true);
field.set(f, null);
getMainHandler().post(new Runnable() {
@Override
public void run() {
try {
for (Field field : f.getClass().getDeclaredFields()) {
Class<?> type = field.getType();
if (View.class.isAssignableFrom(type) ||
RecyclerView.Adapter.class.isAssignableFrom(type)) {
Log.i("Clearing " + f.getClass().getSimpleName() + ":" + field.getName());
field.setAccessible(true);
field.set(f, null);
}
}
} catch (Throwable ex) {
Log.w(ex);
}
}
} catch (Throwable ex) {
Log.w(ex);
}
});
}
@Override

Loading…
Cancel
Save