在我的代码中,我必须在单击textview时打开另一个对话框片段,textView在主对话框中片段
textView.setOnClickListener(new View.OnclickListener(){
@Override
public void onClick(View v){
NewDialogFragment.newInstance().show(getChildFragmentManager(),"");
dismiss();
}
});
问题是,当在主对话框中单击textview时,片段获取dismiss()
但新的DialogFragment无法打开,
预期结果是主对话框应该dismiss()
并且NewDialogFragment()
应该出现
谢谢
答案 0 :(得分:0)
试试这个:
textView.setOnClickListener(s->{
NewDialogFragment.newInstance().dismiss()
NewDialogFragment.newInstance().show(getChildFragmentManager(),"");
});
答案 1 :(得分:0)
将getChildFragmentManager()
更改为getFragmentManager()
。
之所以这样做,是因为您想要FragmentManager
中的Activity
,而不是您即将解散的DialogFragment
。否则,您将给出对话框的FragmentManager
,然后将其关闭,这将关闭刚刚附加的对话框。
textView.setOnClickListener(new View.OnclickListener(){
@Override
public void onClick(View v){
NewDialogFragment.newInstance().show(getFragmentManager(),"");
dismiss();
}
});