我正在使用runOnUiThread
处理背景中的一些数据,但在处理中使用的变量(ishr
)的值在最后变为null
。android如何从线程获取值到mainUI
我试图调试它,每件事情都正常工作,值存在于runOnUiThread
块,但它是null
出来时,有没有办法在mainUI中获取值?
public String ishra="";
TextView ish = (TextView) findViewById(R.id.ish);
runOnUiThread(new Runnable(){
@Override
public void run(){
processdata.in.background(result);
}
});
ish.setText(ishra);
process.data.in.background(String match)
{
if (match=="True"){
getdatafromhttp();
processdata(resultfromhttp);
}
}
private void processdata(String data)
{
try
{
JSONObject json = new JSONObject(data);
JSONObject a = json.getJSONObject("data");
ishra = a.getString("Surprise");
}
catch (JSONException e)
{
Log.wtf("log", e);
}
}
'runOnUiThread'不是后台进程 –
'processdata.in.background ...'是做什么的?代码在哪里? – Tigger
你似乎有一个上下文(因为你调用findViewById),所以不应该把它叫做runOnUiThread,你可以直接调用'processdata.in.background'。 – scorpiodawg