From 4d24c654b9f23943246d2ec9abe09e0a106328ad Mon Sep 17 00:00:00 2001 From: Cameron Gutman Date: Sun, 25 Jan 2015 22:11:38 -0500 Subject: [PATCH] Remove the old fragment when adding the new one --- app/src/main/java/com/limelight/PcView.java | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/com/limelight/PcView.java b/app/src/main/java/com/limelight/PcView.java index 49abc5a0..8f60d8e6 100644 --- a/app/src/main/java/com/limelight/PcView.java +++ b/app/src/main/java/com/limelight/PcView.java @@ -25,6 +25,7 @@ import com.limelight.utils.Dialog; import com.limelight.utils.UiHelper; import android.app.Activity; +import android.app.FragmentTransaction; import android.app.Service; import android.content.ComponentName; import android.content.Intent; @@ -51,6 +52,7 @@ import android.widget.Toast; import android.widget.AdapterView.AdapterContextMenuInfo; public class PcView extends Activity implements AdapterFragmentCallbacks { + private AdapterFragment adapterFragment; private RelativeLayout noPcFoundLayout; private PcGridAdapter pcGridAdapter; private ComputerManagerService.ComputerManagerBinder managerBinder; @@ -123,8 +125,14 @@ public class PcView extends Activity implements AdapterFragmentCallbacks { } }); - getFragmentManager().beginTransaction() - .add(R.id.pcFragmentContainer, new AdapterFragment()).commitAllowingStateLoss(); + FragmentTransaction transaction = getFragmentManager().beginTransaction(); + if (adapterFragment != null) { + // Remove the old fragment + transaction.remove(adapterFragment); + } + adapterFragment = new AdapterFragment(); + transaction.add(R.id.pcFragmentContainer, adapterFragment); + transaction.commitAllowingStateLoss(); noPcFoundLayout = (RelativeLayout) findViewById(R.id.no_pc_found_layout); if (pcGridAdapter.getCount() == 0) {