2012-07-03 17 views
0

我正在嘗試執行包含圖像和textview的搜索。 因此,當我搜索它返回積極的結果,但是當我回去與其他值搜索它同時返回舊的返回和新的結果。 我希望我的listView不要向其中添加舊數據。我需要用新值重寫舊數據。在這裏我的代碼:在搜索時在ListView中複製數據

public void onClick(View Kv) { 
    Intent moreDetailsIntent = new Intent(MainMenu.this,ListMobileActivity.class); 
    Bundle dataBundle = new Bundle(); 
    dataBundle.putString("Prov","KwaZulu-Natal"); 
    moreDetailsIntent.putExtras(dataBundle); 
    startActivity(moreDetailsIntent);     
});    

B_GP.setOnClickListener(new View .OnClickListener() { 
    @Override 
    public void onClick(View Gv) { 
     Intent moreDetailsIntent = new Intent(MainMenu.this,ListMobileActivity.class); 
     Bundle dataBundle = new Bundle(); 
     dataBundle.putString("Prov","Gauteng"); 
     moreDetailsIntent.putExtras(dataBundle); 
     startActivity(moreDetailsIntent); 
    } 
}); 

當我點擊第一buttonKZN它必須顯示所有KZN省份,點擊buttonB_GP時,它必須返回所有的GP省。所以它做什麼,它只是返回舊數據時,我搜索了第二次,我在這裏的ListView類新:

Bundle b = getIntent().getExtras(); // Getting the Bundle object that pass from another activity 
String SelectedProv = b.getString("Prov"); 
List<NameValuePair> params = new ArrayList<NameValuePair>(); 
params.add(new BasicNameValuePair("ProvinceName",SelectedProv)); 
Log.d("ProvinceName",SelectedProv); 
JSONObject json = jsonParser.makeHttpRequest("http://10.0.2.2/php/searchKZN.php", "POST", params); 
try{ 
    JSONArray earthquakes = json.getJSONArray("PROV"); 
    for(int i=0;i<earthquakes.length();i++){       
     JSONObject e = earthquakes.getJSONObject(i); 
     String PCity = e.getString("P_City"); 
     PNames.add(PCity); 
     String Pimage = e.getString("Pname"); 
     PImages.add(Pimage); 
    }  
} catch(JSONException e){ 
    Log.e("log_tag", "Error parsing data "+e.toString()); 
} 
setListAdapter(new MobileArrayAdapter(this, PNames,PImages));  

所以,請幫我按選擇鍵diplay正確的價值觀。

回答

3

嘗試你是老闆在此之前PNames.clear(), PImages.clear();

+0

納伊姆先生...笑:)坦人 – Zamani

+0

碰碰,因爲幫我還,謝謝! – ADK