Fragment ein und ausblenden mit Checkbox

  • Antworten:2
  • Bentwortet
Hans M.
  • Forum-Beiträge: 32

21.09.2017, 20:29:27 via Website

Hallo Community,
ich habe ein Menu in der ActionBar erstellt und ein item mit dem Punkt "Hilfe" als Checkbox hinzugefügt. Nun will ich das wenn die Checkbox angeklickt ist das Hilfe Fragment eingeblendet werden. Wenn es nicht angeklickt ist soll das Fragment ausgeblendet werden (Hoffe ihr versteht mich). Ich habe auch schon ein Toast hinzugefügt und da funktioniert es, aber mit den Fragment funktioniert es leider nicht.
Hat jemand ne Idee und kann mir helfen.
Danke im voraus

Falls ihr etwas weiteres benötigt einfach fragen.

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    int id = item.getItemId();


    if (id == android.R.id.home) {
        finish();
        return super.onOptionsItemSelected(item);
    }
    if (id == R.id.action_settings) {
        Intent intent = new Intent(FreierFallActivity.this, SettingActivity.class);
        startActivity(intent);
        return true;
    }

// beginn

    else if (id == R.id.action_hilfe){

         if (item.isChecked()){
             item.setChecked(false);
             Toast.makeText(getApplicationContext(), "Ausbelenden", Toast.LENGTH_SHORT).show();
             FragmentTransaction fragmentTransaction = getSupportFragmentManager().beginTransaction();
             AusblendenHilfe ausblendenHilfe = new AusblendenHilfe();
             fragmentTransaction.add(R.id.fragment_hilfe, ausblendenHilfe);
             fragmentTransaction.commit();

         }
         else {
             item.setChecked(true);
             Toast.makeText(getApplicationContext(), "Einblenden", Toast.LENGTH_SHORT).show();
             FragmentTransaction fragmentTransaction = getSupportFragmentManager().beginTransaction();
             HilfeFragment hilfeFragment = new HilfeFragment();
             fragmentTransaction.add(R.id.fragment_contener, hilfeFragment);
             fragmentTransaction.commit();
         }

    }
    else if (id == R.id.action_uberuns){
        Intent intent = new Intent(FreierFallActivity.this,UberunsActivity.class);
        startActivity(intent);
    }

    return super.onOptionsItemSelected(item);
}

Antworten
Pascal P.
  • Admin
  • Forum-Beiträge: 11.286

21.09.2017, 21:08:57 via App

Vieleicht kein FragmentManager#add sondern FragmentManager#replace da schon ein Frsgment geladen ist?

LG Pascal //It's not a bug, it's a feature. :) ;)

Hans M.

Antworten
Hans M.
  • Forum-Beiträge: 32

22.09.2017, 15:04:04 via Website

Es funktioniert jetzt. Vielen Dank für die schnelle Hilfe.

Antworten