3

Je dois remplacer id avec le fragment, voici ma source:Comment remplacer fragment avec cointainerviewId dans un DialogBox

public void showEmojiDialog() { 
    final Dialog dialog = new Dialog(MainActivity.this); 
    dialog.requestWindowFeature(Window.FEATURE_NO_TITLE); 
    dialog.setCancelable(false); 
    dialog.setContentView(R.layout.activity_check); 
    mEditEmojicon1 = (EmojiconEditText) dialog.findViewById(R.id.editEmojicon1); 
    getSupportFragmentManager() 
      .beginTransaction() 
      .replace(R.id.editEmojicon1, EmojiconsFragment.newInstance(false)) 
      .commit(); 
    Button dialogButton = (Button) dialog.findViewById(R.id.send_btn); 
    dialogButton.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      dialog.dismiss(); 
     } 
    }); 

    dialog.show(); 

} 

Face question ici:

getSupportFragmentManager() 
     .beginTransaction() 
     .replace(R.id.editEmojicon1, EmojiconsFragment.newInstance(false)) 
     .commit(); 

Causée par: java .lang.IllegalArgumentException: Aucune vue trouvée pour l'ID 0x7f0d007c (com.sample.testapplication: id/editEmojicon1) pour le fragment EmojiconsFragment {1f7f3e0d # 0 id = 0x7f0d007c}

Je suis confus pour remplacer l'id R.id.editEmojicon1 avec EmojiconsFragment mais comme je suis dans la boîte de dialogue, il ne reçoit pas sa vue.

Voici ce que je veux montrer dans une boîte de dialogue.

+0

Qu'essayez-vous exactement de faire? Essayez-vous d'afficher 'EmojiconsFragment' dans le dialogue? –

+0

@Daniel Nugent oui. Je peux montrer que dans une activité mais face à un problème à afficher dans une boîte de dialogue personnalisée –

Répondre

0

Au lieu de getSupportFragmentManager() utilisation getChildFragmentManager().

+0

getChildFragmentManager() est une méthode d'un fragment. Mon activité étend AppCompatActivity dans lequel j'utilise la boîte de dialogue. –