2015-06-28 4 views
0

Я построил ListView, который увеличивается каждый раз, когда пользователь нажимает кнопку, и я хотел бы установить лимит на пользователя и разрешить только 4 строки в день.Как я могу подсчитать количество строк списка с одинаковым значением?

Вот почему я пытаюсь подсчитать количество строк с определенным значением (Date) и получить точное значение из строк списка, созданных в текущий день, чтобы пользователь не добавил больше строк.

Я получаю мои данные из Json:

try { 
        JSONObject jsonObj = new JSONObject(jsonStr); 

        // Getting JSON Array node 
        contacts = jsonObj.getJSONArray(TAG_CONTACTS); 

        // looping through All Contacts 
        for (int i = 0; i < contacts.length(); i++) { 
         JSONObject c = contacts.getJSONObject(i); 

         String id = c.getString(TAG_ID); 
         String date = c.getString(TAG_DATE); 

         HashMap < String, String > contact = new HashMap < String, String >(); 

         contact.put(TAG_ID, id); 
         contact.put(TAG_DATE, date); 
         contactList.add(contact); 

        } 
     } 
} 

Спасибо.

ответ

0

Перед ваш цикл, создать экземпляр SimpleDateFormat, в зависимости от формата даты в вашем JSON, например:

SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy/MM/"); 

Затем получить текущую дату:

String currentDate = dateFormat.format(Calendar.getInstance().getTime()); 

Затем подсчитать количество строк для тока дата внутри цикла:

if (date.equals(currentDate)) { 
    count++; 
} 

После выхода из цикла для:

// number of rows user allowed to add today 
int allowed = LIMIT - count; 
Смежные вопросы