0
我上課喜歡這個不尋常的行爲(其實onResponse方法解析JSON,但我刪除了那件OD代碼爲簡單起見):的Java變量
class DistRespListener implements HttpClient.HttpResponseListener {
private double dist;
@Override
public void onResponse(HttpMetaResponse response) {
Double distTemp = 14.7;
setDist(distTemp);
Log.d("distanceInner2", String.valueOf(this.dist));
}
public void setDist(double dist) {
this.dist = dist;
Log.d("distanceInner4", String.valueOf(this.dist));
}
public double getDist() {
Log.d("distanceInner3", String.valueOf(this.dist));
return this.dist;
}
稍後在代碼中,我有這樣的:對象的HttpClient的
HttpClient httpClient = new HttpClient();
DistRespListener distRespListener = new DistRespListener();
httpClient.executeRequestUsingOwnListener(new HttpGet(builder.build().toString()), distRespListener);
Log.d("distanceOuter", String.valueOf(distRespListener.getDist()));
方法executeRequestUsingOwnListener調用distRespListener對象的方法onResponse()。
問題是,getDist()方法總是返回「0.0」。
是不是要求完成異步? – Simon
您在此之前設置了dist,對嗎? –
@Simon是的,是的。 onResponse()在onPostExecute()中調用 – user3199693