2016-04-12 46 views
3

我有一個自定義對話框,getFragmentManager()不能分辨上的自定義對話框

public class DialogBoxLogInPop extends DialogBox implements View.OnClickListener { 
//...some code... 
} 

在主要活動有一個按鈕,OnClicked那個按鈕一個登錄對話框彈出。當條件達到時,會提示用戶某個片段。

if (username.trim().length() > 0 && password.trim().length() > 0) { 
     if (tTable_Contacts.checkifexist(username, password)) { 

      FragmentManager fragmentManager = getFragmentManager(); 
      fragmentManager.beginTransaction() 
        .replace(R.id.content, mFragment_member).addToBackStack(null).commit(); 

      dismiss(); 

     } else { 
      ETLoginDialogEmail.setError("Username is not valid."); 
      ETLoginDialogPassword.setError("Password is not valid."); 

     } 
    } 

我的問題是,getFragmentManager()函數無法解析。 任何人都可以幫助我如何解決這個問題?

預先感謝您。

+0

是什麼對話框延伸? –

+0

檢查我的[答](http://stackoverflow.com/questions/36565823/getfragmentmanager-cannot-resolved-on-custom-dialog/36566078#36566078),看看是否適合你。 –

回答

2

試試這個,

FragmentManager fragmentManager = getActivity().getSupportFragmentManager(); 
+2

請始終在SO中添加對您答案的解釋。 –

0

使用

FragmentManager manager = getSupportFragmentManager(); 
    manager.beginTransaction() 
      .setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN) 
      .replace(R.id.content_main, mFragment_member) 
      .commit(); 
+0

它仍然無法解決。 TNN反正 – RockNinja

+0

我更新我的答案! –

+0

請始終在SO中添加解釋。 –

0

DialogBoxLogInPop變化構造接收activity這樣的:

public class DialogBoxLogInPop extends DialogBox implements View.OnClickListener { 

private Activity activity; 
public DialogBoxLogInPop(Activity activity){ 
    this.activity = activity; 
} 

現在創建DialogBoxLogInPopinstance這樣的:

Activity

DialogBoxLogInPop dialogBoxLogInPop = new DialogBoxLogInPop(MainActivity.this); //MainActivity is name of your activity 

Fragment

DialogBoxLogInPop dialogBoxLogInPop = new DialogBoxLogInPop(getActivity()); 

現在叫FragmentManager這樣的:

FragmentManager fragmentManager = activity.getFragmentManager();