Example usage for android.support.v4.app FragmentManager popBackStack

List of usage examples for android.support.v4.app FragmentManager popBackStack

Introduction

In this page you can find the example usage for android.support.v4.app FragmentManager popBackStack.

Prototype

public abstract void popBackStack();

Source Link

Document

Pop the top state off the back stack.

Usage

From source file:it.sasabz.android.sasabus.classes.dialogs.ConnectionDialog.java

private void fillData() {
    MyXMLConnectionAdapter adapter = new MyXMLConnectionAdapter(list);
    ListView listv = (ListView) findViewById(android.R.id.list);
    listv.setAdapter(adapter);//w  w w .ja  v a 2  s.  c o  m
    listv.setOnItemClickListener(new OnItemClickListener() {

        @Override
        public void onItemClick(AdapterView<?> l, View v, int position, long id) {
            XMLConnection conn = (XMLConnection) list.get(position);
            if (conn instanceof XMLJourney) {
                SimpleDateFormat simple = new SimpleDateFormat("HH:mm");
                String fromtext = "(" + conn.getDeparture().getStation().getHaltestelle().replace(" -", ")");
                String totext = "(" + conn.getArrival().getStation().getHaltestelle().replace(" -", ")");
                FragmentManager fragmentManager = fragment.getFragmentManager();
                FragmentTransaction ft = fragmentManager.beginTransaction();

                Fragment old = fragmentManager.findFragmentById(R.id.onlinefragment);
                if (old != null) {
                    ft.remove(old);
                }
                Fragment fragment = null;
                try {
                    fragment = new WayFragment(((XMLJourney) conn).getAttribut("NUMBER"), fromtext, totext,
                            simple.format(conn.getDeparture().getArrtime()),
                            simple.format(conn.getArrival().getArrtime()));
                } catch (Exception e) {
                    fragment = old;
                    AlertDialog.Builder builder = new AlertDialog.Builder(getContext());
                    builder.setCancelable(false);
                    builder.setMessage(R.string.error_connection);
                    builder.setTitle(R.string.error);
                    builder.setNeutralButton(android.R.string.ok, new DialogInterface.OnClickListener() {

                        @Override
                        public void onClick(DialogInterface dialog, int which) {

                            dialog.dismiss();
                        }
                    });
                    builder.create();
                    builder.show();
                    fragmentManager.popBackStack();
                }
                ft.add(R.id.onlinefragment, fragment);
                ft.addToBackStack(null);
                ft.commit();
                fragmentManager.executePendingTransactions();
                dismiss();
            }
        }
    });
}

From source file:com.sonymobile.dronecontrol.activity.MainActivity.java

private void initDevice() {
    ARDiscoveryDeviceService selectedService = null;

    if (mDeviceToConnect != null && mScreenFragment.isAdded()) {
        for (ARDiscoveryDeviceService service : mDeviceList) {

            // check available devices
            if (service.getDevice() instanceof ARDiscoveryDeviceBLEService) {
                if (EnumDevices.MINIDRONE.equals(mDeviceToConnect)) {
                    selectedService = service;
                    break;
                }/* w  w w  .j  a  v  a 2s . co m*/
            } else if (ardiscoveryService.getProductFromProductID(service.getProductID())
                    .toString() == ARDISCOVERY_PRODUCT_ENUM.ARDISCOVERY_PRODUCT_ARDRONE.toString()) {
                if (EnumDevices.BEBOP.equals(mDeviceToConnect)) {
                    selectedService = service;
                    break;
                }

            } else if (ardiscoveryService.getProductFromProductID(service.getProductID())
                    .toString() == ARDISCOVERY_PRODUCT_ENUM.ARDISCOVERY_PRODUCT_JS.toString()) {
                if (EnumDevices.JUMPINGSUMO.equals(mDeviceToConnect)) {
                    selectedService = service;
                    break;
                }
            }
        }

        // if selected device was found
        if (selectedService != null) {
            final FragmentManager manager = getSupportFragmentManager();
            final FragmentTransaction fragmentTransaction = manager.beginTransaction();

            ((TextView) findViewById(R.id.tv_connecting))
                    .setText(getResources().getString(R.string.device_found));
            ((ProgressBar) findViewById(R.id.progress)).setVisibility(View.INVISIBLE);

            if (Utils.DEBUG || (!Utils.DEBUG && mBtListener.isGamepadConnected())) {
                if (mDeviceToConnect != null) {
                    mHandler.removeCallbacks(mListRefresh);
                    final Intent intent = new Intent(MainActivity.this, mDeviceToConnect.className);
                    intent.putExtra(Constants.EXTRA_DEVICE_SERVICE, selectedService);
                    startActivity(intent);
                }
            } else {
                runOnUiThread(new Runnable() {
                    @Override
                    public void run() {
                        Toast.makeText(getApplicationContext(), R.string.gamepad_needed, Toast.LENGTH_SHORT)
                                .show();
                    }
                });
                fragmentTransaction.detach(mScreenFragment);
                manager.popBackStack();
                manager.popBackStack();
            }

        }
    }
}

From source file:com.app.blockydemo.ui.ScriptActivity.java

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
    FragmentManager fragmentManager = getSupportFragmentManager();

    for (String tag : FormulaEditorListFragment.TAGS) {
        FormulaEditorListFragment fragment = (FormulaEditorListFragment) fragmentManager.findFragmentByTag(tag);
        if (fragment != null) {
            if (fragment.isVisible()) {
                return fragment.onKey(null, keyCode, event);
            }// w  w  w . j a  va  2 s .  com
        }
    }

    FormulaEditorVariableListFragment formulaEditorVariableListFragment = (FormulaEditorVariableListFragment) getSupportFragmentManager()
            .findFragmentByTag(FormulaEditorVariableListFragment.VARIABLE_TAG);

    if (formulaEditorVariableListFragment != null) {
        if (formulaEditorVariableListFragment.isVisible()) {
            return formulaEditorVariableListFragment.onKey(null, keyCode, event);
        }
    }

    FormulaEditorFragment formulaEditor = (FormulaEditorFragment) getSupportFragmentManager()
            .findFragmentByTag(FormulaEditorFragment.FORMULA_EDITOR_FRAGMENT_TAG);

    if (formulaEditor != null) {
        if (formulaEditor.isVisible()) {
            scriptFragment.getAdapter().updateProjectBrickList();
            return formulaEditor.onKey(null, keyCode, event);
        }
    }

    int backStackEntryCount = fragmentManager.getBackStackEntryCount();
    for (int i = backStackEntryCount; i > 0; --i) {
        String backStackEntryName = fragmentManager.getBackStackEntryAt(i - 1).getName();
        if (backStackEntryName != null) {
            fragmentManager.popBackStack();
        } else {
            break;
        }
    }

    if (keyCode == KeyEvent.KEYCODE_BACK) {
        if (currentFragmentPosition == FRAGMENT_SCRIPTS) {
            DragAndDropListView listView = scriptFragment.getListView();
            if (listView.isCurrentlyDragging()) {
                listView.resetDraggingScreen();

                BrickAdapter adapter = scriptFragment.getAdapter();
                adapter.removeDraggedBrick();
                return true;
            }
        }
    }
    return super.onKeyDown(keyCode, event);
}

From source file:com.efithealth.app.activity.MainActivity.java

public boolean returnBack() {
    FragmentManager ft = getSupportFragmentManager();
    int size = ft.getFragments() != null ? ft.getFragments().size() : 0;
    int backStackEntryCount = ft.getBackStackEntryCount();
    Log.e("MainActivity", size + ";" + backStackEntryCount);
    if (backStackEntryCount == 1 || size == 1) {
        if (System.currentTimeMillis() - exitTime > 2000) {
            exitTime = System.currentTimeMillis();
            Toast.makeText(MainActivity.this, "??", Toast.LENGTH_SHORT).show();
        } else {//from ww  w . ja v a  2 s  .  co  m
            MyApplication.getInstance().mLocationClient.stop();
            finish();
            System.exit(0);
        }
        return true;
    } else {
        // ?????
        int state = -1;
        if (states != null && states.size() > 0) {
            state = states.get(states.size() - 1);// ??
            if (backStackEntryCount == state) {
                hideTitleBar(0);
                states.remove(states.size() - 1);
            } else if (backStackEntryCount - 1 == state) {
                hideTitleBar(1);

            }
        }
        ft.popBackStack();
        return true;
    }
}

From source file:org.catrobat.catroid.ui.ScriptActivity.java

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
    FragmentManager fragmentManager = getSupportFragmentManager();

    for (String tag : FormulaEditorListFragment.TAGS) {
        FormulaEditorListFragment fragment = (FormulaEditorListFragment) fragmentManager.findFragmentByTag(tag);
        if (fragment != null && fragment.isVisible()) {
            return fragment.onKey(null, keyCode, event);
        }//w  w  w .  ja v a2 s.  co m
    }

    String tag1 = UserBrickDataEditorFragment.BRICK_DATA_EDITOR_FRAGMENT_TAG;
    UserBrickDataEditorFragment fragment = (UserBrickDataEditorFragment) fragmentManager
            .findFragmentByTag(tag1);
    if (fragment != null && fragment.isVisible()) {
        return fragment.onKey(null, keyCode, event);
    }

    FormulaEditorDataFragment formulaEditorDataFragment = (FormulaEditorDataFragment) getSupportFragmentManager()
            .findFragmentByTag(FormulaEditorDataFragment.USER_DATA_TAG);

    if (formulaEditorDataFragment != null && formulaEditorDataFragment.isVisible()) {
        return formulaEditorDataFragment.onKey(null, keyCode, event);
    }

    FormulaEditorFragment formulaEditor = (FormulaEditorFragment) getSupportFragmentManager()
            .findFragmentByTag(FormulaEditorFragment.FORMULA_EDITOR_FRAGMENT_TAG);

    if (formulaEditor != null && formulaEditor.isVisible()) {
        scriptFragment.getAdapter().updateProjectBrickList();
        return formulaEditor.onKey(null, keyCode, event);
    }
    if (soundFragment != null && soundFragment.isVisible() && soundFragment.onKey(null, keyCode, event)) {
        return true;
    }

    if (lookFragment != null && lookFragment.isVisible() && lookFragment.onKey(null, keyCode, event)) {
        return true;
    }

    int backStackEntryCount = fragmentManager.getBackStackEntryCount();
    for (int i = backStackEntryCount; i > 0; --i) {
        String backStackEntryName = fragmentManager.getBackStackEntryAt(i - 1).getName();
        if (backStackEntryName != null && (backStackEntryName.equals(LookFragment.TAG)
                || backStackEntryName.equals(SoundFragment.TAG))) {
            fragmentManager.popBackStack();
        } else {
            break;
        }
    }

    if (keyCode == KeyEvent.KEYCODE_BACK && currentFragmentPosition == FRAGMENT_SCRIPTS) {
        DragAndDropListView listView = scriptFragment.getListView();
        if (listView.isCurrentlyDragging()) {
            listView.resetDraggingScreen();

            BrickAdapter adapter = scriptFragment.getAdapter();
            adapter.removeDraggedBrick();
            return true;
        }
    }

    return super.onKeyDown(keyCode, event);
}

From source file:hku.fyp14017.blencode.ui.ScriptActivity.java

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
    FragmentManager fragmentManager = getSupportFragmentManager();

    for (String tag : FormulaEditorListFragment.TAGS) {
        FormulaEditorListFragment fragment = (FormulaEditorListFragment) fragmentManager.findFragmentByTag(tag);
        if (fragment != null && fragment.isVisible()) {
            return fragment.onKey(null, keyCode, event);
        }/*from www  .j  a  va  2 s .  c  om*/

    }

    String tag1 = UserBrickDataEditorFragment.BRICK_DATA_EDITOR_FRAGMENT_TAG;
    UserBrickDataEditorFragment fragment = (UserBrickDataEditorFragment) fragmentManager
            .findFragmentByTag(tag1);
    if (fragment != null && fragment.isVisible()) {
        return fragment.onKey(null, keyCode, event);
    }

    FormulaEditorVariableListFragment formulaEditorVariableListFragment = (FormulaEditorVariableListFragment) getSupportFragmentManager()
            .findFragmentByTag(FormulaEditorVariableListFragment.VARIABLE_TAG);

    if (formulaEditorVariableListFragment != null && formulaEditorVariableListFragment.isVisible()) {
        return formulaEditorVariableListFragment.onKey(null, keyCode, event);
    }

    SensorTagFragment sensorTagFragment = (SensorTagFragment) getSupportFragmentManager()
            .findFragmentByTag(SensorTagFragment.SENSOR_TAG_FRAGMENT_TAG);

    if (sensorTagFragment != null && sensorTagFragment.isVisible()) {
        return sensorTagFragment.onKey(null, keyCode, event);
    }

    FormulaEditorFragment formulaEditor = (FormulaEditorFragment) getSupportFragmentManager()
            .findFragmentByTag(FormulaEditorFragment.FORMULA_EDITOR_FRAGMENT_TAG);

    if (formulaEditor != null && formulaEditor.isVisible()) {
        scriptFragment.getAdapter().updateProjectBrickList();
        return formulaEditor.onKey(null, keyCode, event);
    }

    if (soundFragment != null && soundFragment.isVisible() && soundFragment.onKey(null, keyCode, event)) {
        return true;
    }

    if (lookFragment != null && lookFragment.isVisible() && lookFragment.onKey(null, keyCode, event)) {
        return true;
    }

    int backStackEntryCount = fragmentManager.getBackStackEntryCount();
    for (int i = backStackEntryCount; i > 0; --i) {
        String backStackEntryName = fragmentManager.getBackStackEntryAt(i - 1).getName();
        if (backStackEntryName != null && (backStackEntryName.equals(LookFragment.TAG)
                || backStackEntryName.equals(SoundFragment.TAG))) {
            fragmentManager.popBackStack();
        } else {
            break;
        }
    }

    if (keyCode == KeyEvent.KEYCODE_BACK && currentFragmentPosition == FRAGMENT_SCRIPTS) {
        DragAndDropListView listView = scriptFragment.getListView();
        if (listView.isCurrentlyDragging()) {
            listView.resetDraggingScreen();

            BrickAdapter adapter = scriptFragment.getAdapter();
            adapter.removeDraggedBrick();
            return true;
        }
    }

    return super.onKeyDown(keyCode, event);
}