1

我有这个代码:

MainFragmentActivity a = new MainFragmentActivity();
MainFragmentActivity.MasterFrag mm = a.new MasterFrag(); // a.new
MainFragmentActivity.MasterFrag.MasterTask e = mm.new MasterTask();
e.execute();

a.new上面引用的行中,它有一个问题a。它说:

Illegal enclosing instance specification for type MainFragmentActivity.MasterFrag

此代码块位于 a 内Fragment(非静态)内的静态方法内FragmentActivity。我不确定如何声明这个a变量?拨打这个static电话也不是一种选择......我怎样才能获得对MainFragmentActivity实例的引用?

4

1 回答 1

4

如果内部类 MasterFrag 被声明为静态,我相信你会得到这个编译错误。实例化它的正确方法是:

MainFragmentActivity.MasterFrag mm = new MainFragmentActivity.MasterFrag();
于 2014-10-25T20:08:16.317 回答