我正在使用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