Shi*_*hah 2 android android-activity android-fragmentactivity
我正在使用这个扩展另一个抽象类的类A(这个抽象类扩展了FragmentActivity)和我在A类中的一个函数中我希望得到当前活动A的getActivity().但每当我使用getActivity时,它给出我错误,getActivity()方法没有为我的类定义类型.请帮我 !!我怎么能实现这个?
我的班级代码A.
public class A extends B
{
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.voicing);
//doing another initializations and stuff//
}
}
Run Code Online (Sandbox Code Playgroud)
B类代码
public abstract class B extends FragmentActivity
{
FragmentAdapter mAdapter;
ViewPager mPager;
PageIndicator mIndicator;
}
Run Code Online (Sandbox Code Playgroud)
Rol*_*f ツ 16
A FragmentActivity是Activity(Java风格:) 的实例FragmentActivity extends Activity.
所以没有必要调用getActivity因为a FragmentActivity已经是一个Acivity,所以只需调用/使用即可this.也没有叫方法getActivity在FragmentActivity类.换句话说,你的B类正在扩展一个Activity实例.
因此,在您的A(或B)类中,您可以使用此代码段来获取活动实例:
Activity test = (Activity) this;
Run Code Online (Sandbox Code Playgroud)
但是,如果你的B类延伸,Fragment那么getActivity呼叫就可以了.
FragmentActivity为替代,以Activity在支持包.由于你的class B 延伸 FragmentActivity和后来的class A扩展class B,因此你class A也指Activity(又名FragmentActivity).
简而言之,您不需要调用任何方法.只需使用this关键字来引用您的活动实例.
| 归档时间: |
|
| 查看次数: |
20180 次 |
| 最近记录: |