2016-12-28 89 views
1

我在我的適配器(RecyclerView)中有陣列列表。Android - 從陣列列表中刪除項目ID

我有它的ID刪除數組列表中的項目:

public static ArrayList<News> newsList = new ArrayList<News>(); 

我充滿數組列表如下圖所示:

News n = new News(); 
n.id = data.getString("from_user_id"); 
n.comments = data.getString("message"); 
n.title = data.getString("name"); 
n.time = time; 
newsList.add(n); 

我想通過它的ID從列表中刪除的項(n.id)的值。

我該怎麼做?

+0

遍歷列表檢查ID是否匹配並刪除 –

+0

@ AkshayBhat'AB'Im新的。請讓我知道我該怎麼辦? – Ghorbanzadeh

+2

這樣做 if(removeId.equals(n.id)) newsList.remove(n.id); – Shane

回答

3

你可以這樣做

for(int i = 0 ; i < newsList.size() ; i++){ 
     if("yourId".equalsIgnoreCase(newsList.get(i).id)){ 
      newsList.remove(i); 
     } 
    } 
+1

謝謝你的工作:) – Ghorbanzadeh

1

遍歷列表並檢查id是否匹配並刪除。像:

public static ArrayList<News> newsList = new ArrayList<News>(); 
News newsToRemove; 
for(News news : newsList) { 
    if(news.getId() == yourId) { 
     newsToRemove = news; 
     break; 
    } 
} 
if(newsToRemove != null) { 
    newsList.remove(newsToRemove); 
} 
1

嘗試這樣的事情

public deleteItemById(int Id){ 

int i=0; 

    for(i=0;i<newsList.size();i++){ 
     New news=newsList.getItem(i); 
     if(news.getid()==Id){ 
     newsList.remove(i); 
    } 

    } 


} 
1

試試這個,切切實實的,這將幫助你

for(int i = 0 ; i < "YOURLIST.size();" ; i++){ 
    if("IDTOREMOVE".equalsIgnoreCase(REALID){ 
     YOURLIST.remove(i); 
    } 
}