private void InitRecyclerView() { _recyclerView = FindViewById <RecyclerView>(Resource.Id.activity_chat_new_filtered_members); _recyclerView.HasFixedSize = true; _recyclerView.SetLayoutManager(new LinearLayoutManager(this)); _recyclerView.AddItemDecoration(new LeftOffsetItemDecoration(this, Resource.Color.chat_divider_color, 72)); _recyclerViewAdapter = new ObservableRecyclerViewAdapter <ChatUserViewModel>( ViewModel.PaginationViewModel.Items, (parent, i) => { var v = LayoutInflater.From(parent.Context).Inflate(Resource.Layout.item_chat_new_contact, parent, false); return(new FilteredItemViewHolder(v, ViewModel.CreatePersonalChatCommand)); }, (holder, i, item) => { var viewHolder = (FilteredItemViewHolder)holder; viewHolder.Bind(item); }); _recyclerView.SetAdapter(_recyclerViewAdapter); _recyclerView.AddOnScrollListener(new LoadMoreScrollListener(new TaskReference(async() => { await ViewModel.PaginationViewModel.LoadNextPageAsync(); }))); _searchNoResultView = FindViewById <SearchNoResultView>(Resource.Id.search_no_result_container); _searchNoResultView.Text = ViewModel.LocalizedStrings.SearchNoResults; }
private void InitFilteredRecyclerView(View view) { _filteredMembers = view.FindViewById <RecyclerView>(Resource.Id.dialog_select_members_filtered_members); _filteredMembers.HasFixedSize = true; _filteredMembers.SetLayoutManager(new LinearLayoutManager(Context)); _filteredMembers.AddItemDecoration(new DividerItemDecoration(Context, DividerItemDecoration.Vertical)); _filteredAdapter = new ObservableRecyclerViewAdapter <ChatUserViewModel>( ViewModel.PaginationViewModel.Items, (parent, i) => { var v = LayoutInflater.From(parent.Context).Inflate(Resource.Layout.view_holder_member_filter_item, parent, false); return(new FilteredItemViewHolder(v, new RelayCommand <ChatUserViewModel>(x => { x.IsSelected = !x.IsSelected; }))); }, (holder, i, item) => { var viewHolder = (FilteredItemViewHolder)holder; viewHolder.Bind(item); }); _filteredMembers.SetAdapter(_filteredAdapter); _filteredMembers.AddOnScrollListener(new LoadMoreScrollListener(new TaskReference(async() => { await ViewModel.PaginationViewModel.LoadNextPageAsync(); }))); }
private void InitSelectedRecyclerView(View view) { _addedMembers = view.FindViewById <RecyclerView>(Resource.Id.dialog_select_members_added_members); _addedMembers.SetLayoutManager(new LinearLayoutManager(Context, LinearLayoutManager.Horizontal, false)); _selectedAdapter = new ObservableRecyclerViewAdapter <ChatUserViewModel>( ViewModel.SelectedContacts, (parent, i) => { var v = LayoutInflater.From(parent.Context).Inflate(Resource.Layout.view_holder_member, parent, false); return(new SelectedContactViewHolder(v)); }, (holder, i, item) => { var viewHolder = (SelectedContactViewHolder)holder; viewHolder.Bind(item); }); _addedMembers.SetAdapter(_selectedAdapter); }