ListFragment를 확장하는 Fragment의 onActivityCreated 메소드에서 DialogFragment의 제목을 설정하려고합니다.ListFragment의 DialogFragment에 setTitle() 호출
public void onActivityCreated(Bundle savedState) {
super.onActivityCreated(savedState);
ListView lv = this.getListView();
lv.setOnItemLongClickListener(new OnItemLongClickListener() {
public boolean onItemLongClick(AdapterView<?> arg0, View arg1,
int pos, long id) {
android.app.FragmentManager fragmentManager = getFragmentManager();
FragmentTransaction fragmentTransaction = fragmentManager
.beginTransaction();
RatingDialogFragment newFragment = new RatingDialogFragment();
newFragment.getDialog().setTitle("String");
fragmentTransaction.add(newFragment, "dialog");
newFragment.show(fragmentTransaction, "dialog");
return true;
}
});
}
DialogFragment의 mDialog가 여전히 null이기 때문에 널 포인터 예외가 발생합니다.
은 참조 :이 문제를 해결하는 방법에 대한 DialogFragment.getDialog returns null
어떤 아이디어?
고마워요! String을 RatingDialogFragment 생성자를 통해 전달한 다음, RatingDialogFragment의 onCreateDialog에서 setTitle을 호출하면 트릭이 수행됩니다. – edst