[Android] 多重使用Fragment 中的onFragmentInteraction

新建的一个Fragment,被一个Activity使用,那么这个Activity需要继承一个接口:

public class MainActivity extends Activity
        implements HistoryFragment.OnFragmentInteractionListener{
}

否则会被报错

java.lang.ClassCastException: com.livingspring.luchebao.MainActivity@4261c220 must implement OnFragmentInteractionListener
at com.livingspring.luchebao.HistoryFragment.onAttach(HistoryFragment.java:84)
at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:849)

在新建的Fragment里面有这样一个复写的方法

 @Override
    public void onAttach(Activity activity) {
        super.onAttach(activity);
        try {
            mListener = (OnFragmentInteractionListener) activity;
        } catch (ClassCastException e) {
            throw new ClassCastException(activity.toString()
                    + " must implement OnFragmentInteractionListener");
        }
    }

明确要求 与之匹配的Activity需要继承一个方法来进行通信,继承以后还要复写一个方法:

 @Override
    public void onFragmentInteraction(Uri uri) {
       
    }

 

posted @ 2014-09-13 23:50  Zoe_J  阅读(4799)  评论(0编辑  收藏  举报