这是场景
我有一个活动(A),它有一个按钮和文本视图。我有另一个类(B),其中包含执行各种功能的方法。创建类 B 的实例后,当单击按钮时,会从 A 调用它的公共方法之一。该方法需要一段时间来执行(它调用类中另一个耗时的私有方法)并返回类 B 的私有成员之一的值。
问题在于该方法返回成员的初始值,而不是计算后的值。有没有办法强制函数等待一段时间并返回计算成员的值?
public String getItem(){
startFunction(); //Time consuming Function
generateItem(); //Function which uses results of startFunction() to generate item and set values to mItem
return mItem; //mItem is the private member of class B
}
返回的值始终是 mItem 的默认值,即构造函数中设置的值。 startFunction(WiFi 扫描) 所花费的时间是任意的。任何帮助将非常感激。
当您创建 B 类的实例时,请确保它需要Context
作为其构造函数中的参数。然后你可以尝试使用AsyncTask
(假设你知道)。然后将耗时的函数放入doInBackground()
以及等待其值的函数onPostExecute()
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)