0

我正在尝试使用 HttpManager 从 url 检索字符串

public String request(Context context, String url){
        page_requested = "empty";
        HttpQuery query = new HttpQuery(context, mHttpClient);
        query.execute(url);
        return page_requested;
    }

并在 MainActivity 中使用它

public void onClick(View v) {
        Toast.makeText(MainActivity.this, HttpManager.getInstance().request(MainActivity.this, "http://myurl"), Toast.LENGTH_SHORT).show();
    }

public String request不等待执行查询并返回“空”,但如果我等待 10 秒显示 toast,它会返回正确的值。

显示预期值的最佳方式是什么?

4

1 回答 1

0

使用 AsyncTask 显示您的文本。我认为这将是一种有效的方式..您可以在加载操作时显示进度条。

public class DisplayString extends AsyncTask<Void, Void, Void>
{  
@Override
protected void onPreExecute()
{  
    super.onPreExecute();
    dialog.setMessage("Please wait...");
    dialog.setCancelable(false);
    dialog.show();

} 
@Override 
protected void onProgressUpdate(Void... values) {
    super.onProgressUpdate(values);
    // Things to be done while execution of long running operation is in progress. For example updating ProgessDialog
 }

@Override 
protected void onPostExecute(Void result)

{ 
      //Post Execute
       dialog.cancel();
     //Display your string here
}
@Override
protected Void doInBackground(Void... params) {

  // Your operation..Dont Edit Any Views here

    return null;
}

}

希望能帮助到你

于 2013-03-27T17:14:18.967 回答