viewpager配合fragment,每个viewpager都放一个fragment,并且每个fragment的optionmenu都不同,但是遇到这样一个问题,我在其中一个fragment中写一个optionmenu,但是和它挨着的fragment会显示同样的菜单,尽管我并没有在那个fragment中写optionmenu,但是它会自动出现,真的很无语,看了无数遍的官方文档,还是没有发现错误,百度/谷歌了几篇老外的文章,也没有找到办法。真的很无语,这样一个细节问题让我用了一整天的时间。同事也一直帮我想办法,测试了几下都不行。晚上回家还在想,于是看公司svn的代码,发现,同事已经解决了,我仔细看了他的办法,原来是在同一个fragment中,再写一个fragment,但是在onCreateView()方法中不返回view,返回Null,然后在这个新的fragment中写optionmenu,在onCreate()中setHasOptionMenu(true),就是说这个fragment不是为了返回视图用的,是为了后台操作用的。这个办法好啊,因为我仔细看过官方文档,fragment一个很大的作用就是作为后台使用,不是为了返回一个view,因此这个办法就解决了这个问题。但是我还有一个疑问:为什么这样写就可以呢?这样写其它的fragment就不会出现相同的菜单呢?不解,。。一会同事来了,问问同事吧。
下面是我昨天谷歌到的几篇文章,保留以备参考。全是英文的,看着很蛋疼,现在才发现英语原来真的很重要,因此学好英语是必须的。以后要补补英语了。
http://groups.google.com/group/android-developers/browse_thread/thread/fe8a53f8baff8601?hide_quotes=no
http://code.google.com/p/android/issues/detail?id=19203