我正在创建一个可滑动的Sherlock标签。我用这个教程来做到这一点:
Android ActionBarSherlock ViewPager Tabs Tutorial
但是当我想从片段内部开始一个活动时(例如FragmentTab1),我需要上下文来创建意图并开始活动。 我在Fragment课程中并且无法访问上下文! 我也不能使用getActivity(),因为FragmentTab1是在FragmentPagerAdapter类的getItem()函数内创建的。 我该怎么办?!
答案 0 :(得分:1)
Sherlock Fragments与getSherlockActivity()而不是getActivity()一起使用 你应该尝试使用
getSherlockActivity().startActivity(...)
答案 1 :(得分:0)
我在Fragment课程中并且无法访问上下文!
是的,你这样做。致电getActivity()
以返回托管此片段的Activity
。 Activity
继承自Context
。
我也不能使用getActivity(),因为FragmentTab1是在FragmentPagerAdapter类的getItem()函数内创建的。
所以?这不会以某种方式神奇地导致getActivity()
方法消失。
出于某种原因,您使用的是ActionBarSherlock,其作者已被弃用了大约20个月。如果您的片段是SherlockFragment
,则需要拨打getSherlockActivity()
。