Android - 无法从静态上下文中引用 executePendingTransactions
Posted
技术标签:
【中文标题】Android - 无法从静态上下文中引用 executePendingTransactions【英文标题】:Android - executePendingTransactions cannot be referenced from static context 【发布时间】:2014-12-11 22:45:49 【问题描述】:我从this 知道答案
如果您想立即执行任何此类挂起的操作,您可以调用此函数(仅从主线程)来执行此操作。
但是,如果我从静态主线程调用它,我会收到一条错误消息,提示 executePendingTransactions() 是非静态的,无法从静态上下文中引用。
我该如何解决这个问题?
谢谢!
【问题讨论】:
您可能正在尝试在 FragmentTransaction 类上调用此方法,但由于它不是静态方法,因此该方法不起作用。您应该在 FragmentTransaction 的实例上调用它。发布代码将有助于找出问题。 @Egor,我做FragmentManager.executePendingTransactions();
,FragmentManager无法初始化。
【参考方案1】:
executePendingTransactions()
是FragmentManager
上的常规非静态方法。您需要FragmentManager
的实例,例如通过在您的Activity
或Fragment
上调用getFragmentManager()
(或getSupportFragmentManager()
,如果您正在使用片段反向端口)。
【讨论】:
以上是关于Android - 无法从静态上下文中引用 executePendingTransactions的主要内容,如果未能解决你的问题,请参考以下文章
无法从静态上下文中引用非静态方法 getSocketFactory [重复]