我正在使用类 A,它扩展了另一个抽象类(并且这个抽象类扩展了 FragmentActivity),并且在我的一个函数中,在 A 类中,我想为我当前的 Activity 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//
}
}
B类代码
public abstract class B extends FragmentActivity
{
FragmentAdapter mAdapter;
ViewPager mPager;
PageIndicator mIndicator;
}
最佳答案
FragmentActivity
是Activity
的一个实例(Java 风格:FragmentActivity extends Activity
)。
所以调用 getActivity
没有意义,因为 FragmentActivity
已经是一个 Acivity
,所以只需调用/使用 this
将工作。 FragmentActivity
类中也没有名为 getActivity
的方法。换句话说,您的 B 类正在扩展 Activity
实例。
因此在您的 A(或 B)类中,您可以使用此代码 fragment 来获取 Activity 实例:
Activity test = (Activity) this;
但是,如果您的 B 类扩展了 Fragment
,那么 getActivity
调用就会起作用。
关于android - getActivity() 在 FragmentActivity : android 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12693251/