Androidノート:FragmentとActivityのインタラクション、onAttach、最後のfragmentを終了


一、インタラクティブコードメモ:
    private LoginFragmentListener mListener;
    @Override
    public void onAttach(Activity activity)
    {
        super.onAttach(activity);
        try
        {
            mListener = (LoginFragmentListener) activity;
        }
        catch (ClassCastException e)
        {
//            throw new ClassCastException(activity.toString() + "must implement LoginFragmentListener");
            Log.e(" ", activity.toString() + " LoginFragmentListener !");
        }
    }
                          
    //  
    public interface LoginFragmentListener
    {
        //  
        public void OnLoginComplete(String result);
        //  
        public void OnLoginFailed(String result);
        //  
        public void OnLoginOutFailed(String mSessionId);
        //  
        public void OnLoginOutComplete(String result);
    }

二、finishを書き換えて最後のfragmentを終了する
/**
 *  finish, fragment fragment finish
 */
@Override
public void finish()
{
    if (getSupportFragmentManager().getBackStackEntryCount() == 0)
    {
        super.finish();
    }
    else
    {
        getSupportFragmentManager().popBackStack();
    }
}