2015-10-31 65 views
2

我正在使用IntelliJ学习Android编程,并且遇到了一些问题。从活动开始DialogFragment

我有看起来像这样的活动:

public class example2 extends Activity { 
    ...some code... 
    public boolean onOptionsItemSelected(MenuItem item) { 
     switch (item.getItemId()) { 
      case R.id.optExit: 
       finish(); 
       return true; 
      case R.id.optSettings: 
       Intent sintent = new Intent(this, settings.class); 
       startActivity(esintent); 
       return true; 
      case R.id.optAbout: 
       //need to start the fragmentdialog 

     } 
     return true; 
    } 
    ...some code... 
} 

这是我DialogFragment看起来像

public class about extends DialogFragment { 

    public Dialog onCreateDialog(Bundle savedInstanceState) { 
     AlertDialog.Builder b = new AlertDialog.Builder(getActivity()); 
     b.setTitle("About"); 
     b.setMessage("some text"); 
     b.setCancelable(false); 
     b.setPositiveButton("OK", null); 
     return b.create(); 
    } 
} 

我已经试过几乎所有,创建一个新的实例,然后启动该方法,使用FragmentManager,我无法使用。我该怎么办?

回答

2

的批准namings使用有关,而不是关于它只是

new About().show(getSuppourtFragmentManager(),"about"); 
+0

,不能正常工作,我无法访问此getSupportFragmentManager(),我也没有android.support.v4。应用包... – Markus

+1

很好用'getFragmentMananger()'@Markus – Elltz