2012-09-20 4 views

답변

3

귀하의 활동이 구현해야하는 대화 상자 부분에 인터페이스를 생성 할 수 있습니다. Dialog Fragment에서 "onDetach"메서드를 재정의하고 해당 메서드에서 리스너 활동을 호출 할 수 있습니다.

그래서이 라인을 따라 뭔가 :

public class MyActivity extends Activity implements MyDialogFragment.CallBack{ 

    @Override 
    public void onMyDialogFragmentDetached(){ 
     /** Called When MyDialogFragment gets detached. */ 
    } 

    } 

나는 희망이 도움이 :

import android.app.Activity; 
import android.support.v4.app.DialogFragment; 

public class MyDialogFragment extends DialogFragment{ 

    public interface CallBack{ 
     public void onMyDialogFragmentDetached(); 
    } 

    public CallBack mCallBack; 

    @Override 
    public void onAttach(Activity activity){ 
     super.onAttach(activity); 
     mCallBack = (CallBack) activity; 
    } 

    @Override 
    public void onDetach(){ 
     super.onDetach(); 
     mCallBack.onMyDialogFragmentDetached(); 
    } 

} 

그런 다음 당신의 활동이이 MyDialogFragment.CallBack를 구현합니다. 행운을 빌어 요.

+0

답장을 보내 주셔서 감사합니다. 문제는 필자가 너무 많은 조각을 가지고있어서 모든 조각에서 onDetach를 무시하는 것이 가능하지 않다는 것입니다. 또한 내가 같은 일을 할 수 있도록 조각을위한 기본 클래스를 만들 수 없습니다하지만 또한 또한 현재의 모든 조각에 대한 상속을 변경해야합니다. 그래서 외부에서 파편에 연결하는 방법이 있습니까? –

+0

Baseclass를 만들고 동일하게했습니다. 어쨌든 도움 주셔서 감사합니다 ... –

관련 문제