Java android等待函数
我有两个类A和B。我在类A中,我调用了类B中的一个函数,其中一个按钮被初始化。单击按钮时,x的值变为true,而最初为false。在执行类A中的下一条语句之前,类B中的x的值应该为true。 我尝试了B.wait,但它返回异常。Java android等待函数,java,android,Java,Android,我有两个类A和B。我在类A中,我调用了类B中的一个函数,其中一个按钮被初始化。单击按钮时,x的值变为true,而最初为false。在执行类A中的下一条语句之前,类B中的x的值应该为true。 我尝试了B.wait,但它返回异常。 是否仍要这样做?您可以使用AsyncTask类。 在“预执行”功能中,初始化x和按钮或任何内容,在“后执行”中,执行您想做的任何事情。您可以尝试添加如下内容: while (B.x == false) { try { Thread.sleep(50); } ca
是否仍要这样做?您可以使用AsyncTask类。
在“预执行”功能中,初始化x和按钮或任何内容,在“后执行”中,执行您想做的任何事情。您可以尝试添加如下内容:
while (B.x == false) {
try { Thread.sleep(50); } catch (Exception e) {}
// Sleeping is necessary to prevent high CPU usage
}
无论如何,您不应该在UI线程中使用此选项,因为它可能导致ANR应用程序没有响应请考虑发布实际代码,以便我们更好地了解问题。类A是活动,类B是片段吗?类A是活动,类B是CustomGridView。。我在gridview中使用类B中的gridAdapter创建按钮。在类A中创建在buttons onClick方法中调用的方法。使用等待UI线程时要小心,因为这看起来像是应用程序挂起到用户身上,android会提示用户关闭任何挂起5秒钟的应用程序。我仍然建议使用实际代码编辑您的帖子。是否有必要单击该按钮以将x设置为真?可能你可以在初始化按钮后将其设置为真。使用AsyncTack将帮助你,试试看。找到一些教程并根据需要进行更改。