2017-02-21 50 views
0

私はアンドロイドスタジオにいくつかのコードを持っています。断片化した実行アクティビティ

public void addConversationFragmentStartCall(ArrayList<Integer> opponents, 
              QBRTCTypes.QBConferenceType qbConferenceType, Map<String, String> userInfo) { 
    QBRTCSession newSessionWithOpponents = rtcClient.createNewSessionWithOpponents(opponents, qbConferenceType); 
    SettingsUtil.setSettingsStrategy(opponents, getDefaultSharedPrefs(), this); 

    Log.d("Crash", "addConversationFragmentStartCall. Set session " + newSessionWithOpponents); 
    initCurrentSession(newSessionWithOpponents); 
    ConversationFragment fragment = ConversationFragment.newInstance(opponents, "jinkal", qbConferenceType, 
      userInfo, StartConversetionReason.OUTCOME_CALL_MADE, getCurrentSession().getSessionID()); 
    FragmentExecuotr.addFragment(getFragmentManager(), R.id.fragment_container, fragment, 
      CONVERSATION_CALL_FRAGMENT); 

    if (ringtonePlayer != null) { 
     ringtonePlayer = new RingtonePlayer(this, R.raw.beep); 
    } 
    ringtonePlayer.play(true); 
} 

私はこのコードのクリックボタンでフラグメントから呼び出す:

if (getActivity() != null) { 
      ((VideoCallActivity) getActivity()).addConversationFragmentStartCall(
        oponent, qbConferenceType, userInfo); 
       callStatus = 1; 
      } 

しかし、立ち往生してエラー

java.lang.ClassCastExceptionが取得:COMを私はこの活動を呼び出したいです。 going.pass.MainDrawerActivityはcom.going.pass.activity.VideoCallActivityにキャストできません

フラグメントの私のコードは、この

クラスUberTripFragmentを使用UberBaseFragment

にUberBaseFragmentで、これは含まれてい

拡張:

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    activity = (MainDrawerActivity) getActivity(); 
    requestQueue = Volley.newRequestQueue(activity); 

} 

この問題を解決する方法を助けてくださいと...

答えて

0

フラグメントこれは、

と呼ばれます。

MainDrawerActivityにアタッチされているため、VideoCallActivityにアタッチする必要があります。

+0

どうすれば私のフラグメントからpublic void addConversationFragmentStartCallを呼び出すことができますか? – user2114764

+0

再び助けてください – user2114764

+0

MainDrawerActivityの代わりにVideoCallActivityにフラグメントを追加してください。 getActivity()はフラグメントを含むアクティビティを返します – PrisonMike

関連する問題