Обновить видимое представление списка (строка) из другого действия

введите здесь описание изображенияПривет. H имеет представление списка, заполненное MyCustomAdapter. в моем пользовательском адаптере я получаю данные с сервера с помощью json и сохраняю их в ArrayList<HashMap<String, String>>

Конструктор MyCustomAdapter выглядит так:

public MyCustomAdapter(Activity a, ArrayList<HashMap<String, String>> d){
        mActivity   = a;
        mData       = d;
        mInflater   = (LayoutInflater) mActivity.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
}

и в моем getView я извлекаю данные из mData и устанавливаю для них такие представления, как заголовок, описание и т. д., которые вы можете видеть на изображении.

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

В приложении Google+, когда вы читаете сообщение и ставите лайк этому посту, когда вы возвращаетесь к списку всех сообщений, эта кнопка лайка сообщения обновляется!! я хочу что-то вроде этого

спасибо за любую помощь :)


person MAY3AM    schedule 12.09.2014    source источник


Ответы (1)


Поскольку вы используете ArrayList<HashMap<String, String>>, а не курсор/контент-провайдер, ваш адаптер не будет автоматически уведомляться об изменениях базовых данных.

Один из способов — использовать что-то вроде Otto (http://square.github.io/otto/) или любую шину событий для передачи событий, чтобы уведомить ваши действия о некоторых изменениях в базовых данных.

Ваша первая активность должна подписаться на событие обновления данных, а затем во второй активности вы должны отправить эту активность вместе с новыми данными.

person Julian Suarez    schedule 12.09.2014
comment
Вы знаете хороший пример или учебник для меня? Я запутался :( - person MAY3AM; 14.09.2014
comment
Привет. Можете ли вы помочь мне в этом вопросе: title="обновить общий пост в другом представлении списка с другими данными в адаптере"> stackoverflow.com/questions/27374445/. Это связано с EventBus - person MAY3AM; 06.02.2015