我有这段代码:
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
这段代码位于Fragment
内FragmentActivity
(非静态)内的静态方法内。我不知道如何声明这个a
var?将此static
调用也不是一个选项...如何获得对MainFragmentActivity
实例的引用?
答案 0 :(得分:3)
如果声明内部类MasterFrag是静态的,我相信你会得到这个编译错误。然后,实例化它的正确方法是:
MainFragmentActivity.MasterFrag mm = new MainFragmentActivity.MasterFrag();