我有我的,看起來這個。接收傳遞的字符串
@Override
public void onClick(View v) {
......
String searchTerm = et.getText().toString().trim();
Intent in = new Intent(PassingString.this, RecieveString.class);
in.putExtra("TAG_SEARCH", searchTerm);
startActivity(in);
在我的其他活動的活動傳遞一個字符串這是我收到此字符串,並將其編碼到我的網頁地址。 (et
只是我的情況下,EDITTEXT你在哪裏知道)
@Override
protected JSONObject doInBackground(String... args) {
....
Intent in = getIntent();
String searchTerm = in.getStringExtra("TAG_SEARCH");
String query = URLEncoder.encode(searchTerm, "utf-8");
String URL = "http://example.com"+ query + "json";
我試圖移動代碼獲得這個串出我的doInbackGround
方法時速度變慢它只是當我移動Intent in = getIntent();String searchTerm = in.getStringExtra("TAG_SEARCH");
下onCreate
的我在searchTerm
(asynctask中的那個)下面出現語法錯誤,該錯誤說「searchTerm無法解析爲變量」。我曾試過宣稱Intent in = getIntent();String searchTerm = in.getStringExtra("TAG_SEARCH");
有final
但它沒有改變任何東西。我甚至試過把它放入onPreExecute
,但它仍然沒有改變任何東西。所以,可以請人幫我解決這個殺手語法錯誤
這裏是我收到
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//setContentView(R.layout.listview);
Intent in = getIntent();
String searchTerm = in.getStringExtra("TAG_SEARCH");
questionList = new ArrayList<HashMap<String, String>>();
mTask = new LoadAllData();
mTask.execute();
}
@Override
public void onBackPressed()
{
/** If user Pressed BackButton While Running Asynctask
this will close the ASynctask.
*/
if (mTask != null && mTask.getStatus() != AsyncTask.Status.FINISHED)
{
mTask.cancel(true);
}
super.onBackPressed();
}
@Override
protected void onDestroy() {
if (mTask != null && mTask.getStatus() != AsyncTask.Status.FINISHED)
{
mTask.cancel(true);
}
super.onDestroy();
}
@Override
protected void onPause() {
if (pDialog != null)
{
if(pDialog.isShowing())
{
pDialog.dismiss();
}
super.onPause();
}
}
class LoadAllData extends AsyncTask<String, Void, JSONObject> {
@Override
protected void onPreExecute() {
super.onPreExecute();
pDialog = new ProgressDialog(ListView.this);
pDialog.setMessage("Loading Data. Please wait...");
pDialog.setIndeterminate(false);
pDialog.setCancelable(true);
pDialog.show();
}
@Override
protected JSONObject doInBackground(String... args) {
JSONObject json = new JSONObject();
try {
String query = URLEncoder.encode(searchTerm, "utf-8");
String URL = "http://example.com"+ query + "json";
JSONParsser jParser = new JSONParsser();
json = jParser.readJSONFeed(URL);
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return json;
}
它將幫助,如果你添加修改後的代碼塊,因此我們可以更清楚地看到,並按照您的更改。 –
感謝您發佈您的代碼,我更新了我的答案。 –