У меня есть ListFragment с пользовательским адаптером, который должен распространяться из RealmBaseAdapter, реализует ListAdapter, чтобы обновить представление, если что-либо изменилось. Я запрос пользователя из Realm, и получить его/ее друзей, которая возвращает RealmListAndroid RealmBaseAdapter с Listfragment
RealmList<User> users =realm.where(User.class).equalTo("id",userid).findFirst().getFriends()
Этот запрос возвращает RealmList, как хранить его в своем классе User так:
public class User extends RealmObject implements Serializable {
@PrimaryKey
private long id;
private RealmList<User> friends = new RealmList<>();
Так я не может это сделать, потому что RealmBaseAdapter, нуждается в realmResult:
MySportmateListAdapter adapter = new MySportmateListAdapter(getContext(), users);
можете ли вы помочь мне, что такое решение для этого? В пользователе я думаю, что изменить RealmList на RealmResults невозможно, правда?
Первое спасибо за Ваш ответ! 1. Я пробовал это, но, возможно, я делаю что-то не так, потому что видимые строки не обновились, но если я прокручу вниз и назад, у них появились новые значения. 2. Невозможно для меня, потому что не у всех пользователей есть свои друзья в базе данных мобильных устройств. 3. Это подходящее решение для меня, НО я думаю, что мне нужно написать query = query.or(). EqualTo ("id", friend.getId()); внутри! Еще раз спасибо :) –
Cool. Что касается 3-го варианта: возможно, я не понимаю вас правильно, но 'query = query.or(). EqualTo (" friends.id ", friend.getId());' находится в for-loop в моем примере кода. –