0
我花了一天的時間看看發生了什麼。在一個類中,我有簡單的listview多選。最後,每個選項都被放到String數組中並共享到下一個類。Android循環問題
SparseBooleanArray checked = listView.getCheckedItemPositions();
ArrayList<String> selectedItems = new ArrayList<String>();
for (int i = 0; i < checked.size(); i++) {
// Item position in adapter
int position = checked.keyAt(i);
// Add sport if it is checked i.e.) == TRUE!
if (checked.valueAt(i))
selectedItems.add(adapter.getItem(position));
}
String[] outputStrArr = new String[selectedItems.size()];
for (int i = 0; i < selectedItems.size(); i++) {
outputStrArr[i] = selectedItems.get(i);
}
Intent intent = new Intent(getApplicationContext(),
ReadComments.class);
// Create a bundle object
Bundle b = new Bundle();
b.putStringArray("selectedItems", outputStrArr);
// Add the bundle to the intent.
intent.putExtras(b);
// start the ResultActivity
startActivity(intent);
在ReadComments類我做了簡單的方法:
public String[] tablica(){
Bundle b = getIntent().getExtras();
String[] resultArr = b.getStringArray("selectedItems");
return resultArr;
}
它帶回我的數據。當我把它的另一種方法在同一類:
String resultArr[] = tablica();
int x = 0;
for (Map<String, String> mListaMar : mListaMarketow) {
lat = mListaMar.get(TAG_SZER);
longi = mListaMar.get(TAG_DLUG);
name = mListaMar.get(TAG_MARKET);
x=0;
for (x = 0; x < resultArr.length; x++) {
if (resultArr[x] == name) {
ustawMape();
}}}
UstawMape()方法負責谷歌地圖上顯示的標記。我的問題是一個邏輯問題,因爲一切工作正常,但ustawMape()方法應該顯示許多標記,現在它只顯示一個(ustawMape()的構造是可以的,因爲沒有for循環它工作正常)。線索是非常簡單的第一個循環,用於從JSON中獲取數據,第二個應該過濾並僅顯示用戶在listView中選擇的內容。 PLZ幫助我的人!
laalto恥辱的我,這是學校的錯誤:) thx求助 – bakusek