1

나는 조각 (A) 리사이클 뷰가 있습니다. 항목을 누를 때 DialogFragment (해당 항목에 대한 세부 정보 표시)이 표시됩니다. 삭제 버튼을 누르면 항목이 삭제되고 조각 A가 표시됩니다 (변경 사항 있음). 제 질문은 그 항목이 삭제되었음을 통보하는 방법입니다.Snackbar실행 취소 옵션으로 표시하고 싶습니다. , 때를 다음다른 조각에서 스낵바 콜백

public interface OnDeletedItem { 
     void onDeletedItem(Item deletedItem); 
    } 

하는 활동이 인터페이스를 구현 확인,

public class MainActivity 
     extends AppCompatActivity 
     implements DialogFragment.OnDeletedItem 

    @Override 
    public void onDeletedItem(Item deletedItem) { 

      // get the Fragment A from fragment manager and notify it via public method to show a Snackbar with the Undo option as desired 

FragmentA fragmentA = (FragmentA) getFragmentManager().findFragmentByTag("FragmentA"); 
fragmentA.showSnackbarForDeletedItem(deletedItem); // implement showSnackbarForDeletedItem or similar method in FragmentA 
getSupportFragmentManager().popBackStack(null, FragmentManager.POP_BACK_STACK_INCLUSIVE); 
    } 

: 나는 ..

감사

+0

액티비티를 통해 조각 사이의 통신을 수행하는 것이 권장되므로 항목 삭제의 주요 활동을 알리는 인터페이스를 구현하여 다른 인터페이스를 통해 조각 A에 새로 고침 등을 알리는 인터페이스를 대화 상자 조각에 구현할 수 있습니다. – akdsouza

+0

답변을 추가했습니다. – akdsouza

답변

3

DialogFragment에서 인터페이스를 정의를 구글에서 아무것도 발견하지 않았습니다 DialogFragment의 삭제 버튼을 누릅니다.

try { 

    ((OnDeletedItem)getActivity()).onDeletedItem(deletedItem); 

    } catch (ClassCastException cce) {}