它一直是我一個問題strugling了一會兒:字符串數組從onpostexecute到mainactivity
在這一點上,我能:
1,使自定義列表視圖從我的數據庫中的數據 - 這部分已經完成。 2-使用搜索過濾器創建自定義列表視圖。
所以,我想在這一點上使用搜索過濾器進行自定義列表視圖。
的事情是,我掙扎努力,我沒有太多的時間,我已經找到了這唯一的解決辦法是:
在onPostExecute,我運行下面的代碼:
for(int i=0; i<jsonArray.length();i++){
JSONObject json = null;
try {
json = jsonArray.getJSONObject(i);
listId.add(json.getString("id"));
listNome.add(json.getString("name"));
listTipo.add(json.getString("type"));
} catch (JSONException e) {
e.printStackTrace();
}
}
String[] arrId = listId.toArray(new String[listId.size()]);//StringArray de ID's
String[] arrName = listNome.toArray(new String[listName.size()]); //
String[] arrType = listTipo.toArray(new String[listType.size()]);
tvJson.setText(Arrays.toString(arrName));
Intent i = new Intent (MainActivity.this, NextActivity.class);
i.putExtra("KEY_ID", arrId);
i.putExtra("KEY_TIPO", arrTipo);
i.putExtra("KEY_NOME", arrNome);
startActivity(i);
}
正如你所看到的,這不是一個完美的解決方案,但我需要這些字符串數組來製作我的自定義列表視圖。
如果我把它們放在NextActivity上,我所有的代碼都能順利運行,事情就是,我不想開始一個活動,我想讓這個數組到主活動,然後構建我的列表視圖。
那麼,有什麼辦法可以發送這3個字符串[]的MainActivity? PS:這不是最優雅的代碼,但我是新來的,我有一個項目的最後期限 - 這是我不想重寫所有代碼的主要原因。
將廣播發送回您的活動並使用BroadcastReceiver接收它,或讓您的AsyncTask成爲您希望與其一起使用的Activity的子類,並調用直接傳遞字符串數組作爲參數的方法。 – zgc7009 2014-09-30 19:50:16
第一次消音的任何代碼? – pihh 2014-09-30 19:53:08
[看這個廣播接收器的例子](http://www.vogella.com/tutorials/AndroidBroadcastReceiver/article.html) – Shaz 2014-09-30 20:08:08