2014-02-25 117 views
0

如何从onOptionsItemsSelected启动片段?操作栏启动片段

@Override 
    public boolean onOptionsItemSelected(MenuItem item) { 
     switch (item.getItemId()) { 
      case R.id.action_support: 

       Fragment f = new SupportFragment(); 
          FragmentManager fragmentManager = getFragmentManager(); 
       fragmentManager.beginTransaction() 
         .replace(android.R.id.content, f).commit(); 



       Toast display = Toast.makeText(this, "Settings", 10); 
       display.show(); 
      case R.id.action_guide: 
       Toast display1 = Toast.makeText(this, "Guide", 10); 
       display1.show(); 
      return true; 
      default: 
      return super.onOptionsItemSelected(item); 
     } 
    } 

} 

我试图启动支持片段。

感谢

+0

https://www.dropbox.com/s/4vnzxmypv6hggvh/error.txt – user2229747

+1

显示java.lang.NullPointerException 02-25 13:06 :37.231:W/System.err(27967):\t at openday.SupportFragment.onCreate(SupportFragment.java:18) 查看SupportFragment.java类中的第18行有一个nullPointerException,或编辑您的帖子并发布整个代码来获得t他的问题解决了,但这似乎是另一个问题 –

+0

谢谢,发现问题! – user2229747

回答

4
@Override 
public boolean onOptionsItemSelected(MenuItem item) { 
    Fragment fragment; 
    switch (item.getItemId()) { 
      case R.id.action_support: 
       fragment = new Home(); 
      case 1: 
       fragment = new NotesList(); 
      default: 
       fragment = new defaultPageOrAnyOtheOption(); 
    } 

    FragmentManager fragmentManager = getFragmentManager(); 
    fragmentManager.beginTransaction() 
      .replace(R.id.content_frame, fragment).commit(); 
    return true; 

} // onOptionsItemSelected 
+0

嗨,感谢您的代码,我已经更新了我原来的帖子与代码和一个链接到logcat输出,因为它仍然崩溃的应用程序 – user2229747

0

试试吧

@Override 
    public boolean onOptionsItemSelected(MenuItem item) { 
     switch (item.getItemId()) { 
      case R.id.action_support: 

       //launch Support Fragment 
      // Fragment f = new SupportFragment(); 
      // replace(android.R.id.content, f); 

       Toast display = Toast.makeText(this, "Settings", 10); 
       display.show(); 
      return true; 
      case R.id.action_guide: 
       Toast display1 = Toast.makeText(this, "Guide", 10); 
       display1.show(); 
      return true; 
        } 
    } 
+0

它不起作用 – user2229747

+0

可以发布您的日志猫.. –

+0

日志猫:https://www.dropbox.com/s/4vnzxmypv6hggvh/error.txt – user2229747