Example #1
0
        public override bool OnCreateOptionsMenu(IMenu menu)
        {
            this.MenuInflater.Inflate(Resource.Menu.searchMenu, menu);

            var searchItem = menu.FindItem(Resource.Id.action_search);

            searchView = searchItem.ActionView.JavaCast <Android.Widget.SearchView>();

            searchView.QueryTextChange += async(sender, args) =>
            {
                if (args.NewText.Trim() != String.Empty)
                {
                    artists = await APIHelper.findArtists(args.NewText.Trim());

                    if (artists.Count < 1)
                    {
                        listView.Adapter    = null;
                        textView.Visibility = Android.Views.ViewStates.Visible;
                    }
                    else
                    {
                        artistsAdapter      = new ArtistsAdapter(this, Resource.Layout.artistsModel, artists);
                        listView.Adapter    = artistsAdapter;
                        textView.Visibility = Android.Views.ViewStates.Gone;
                    }
                }
                else
                {
                    listView.Adapter    = null;
                    textView.Visibility = Android.Views.ViewStates.Visible;
                }
            };
            return(base.OnCreateOptionsMenu(menu));
        }
        private void SetRecyclerViewAdapters()
        {
            try
            {
                MAdapter = new ArtistsAdapter(Activity)
                {
                    ArtistsList = new ObservableCollection <UserDataObject>()
                };
                MAdapter.OnItemClick += MAdapterOnOnItemClick;
                LayoutManager         = new StaggeredGridLayoutManager(3, LinearLayoutManager.Vertical);
                MRecycler.SetLayoutManager(LayoutManager);
                MRecycler.HasFixedSize = true;
                MRecycler.SetItemViewCacheSize(10);
                MRecycler.GetLayoutManager().ItemPrefetchEnabled = true;
                var sizeProvider = new FixedPreloadSizeProvider(10, 10);
                var preLoader    = new RecyclerViewPreloader <UserDataObject>(Activity, MAdapter, sizeProvider, 10);
                MRecycler.AddOnScrollListener(preLoader);
                MRecycler.SetAdapter(MAdapter);

                RecyclerViewOnScrollListener xamarinRecyclerViewOnScrollListener = new RecyclerViewOnScrollListener(LayoutManager, 3);
                MainScrollEvent = xamarinRecyclerViewOnScrollListener;
                MainScrollEvent.LoadMoreEvent += MainScrollEventOnLoadMoreEvent;
                MRecycler.AddOnScrollListener(xamarinRecyclerViewOnScrollListener);
                MainScrollEvent.IsLoading = false;
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
            }
        }
Example #3
0
        private void SetRecyclerViewAdapters()
        {
            try
            {
                RecommendedList = new ObservableCollection <SoundDataObject>();

                //Browse RecyclerView >> LinearLayoutManager.Horizontal
                GenresAdapter = new GenresAdapter(Activity)
                {
                    GenresList = new ObservableCollection <GenresObject.DataGenres>()
                };
                GenresAdapter.GenresList   = ListUtils.GenresList;
                GenresAdapter.OnItemClick += GenresAdapterOnOnItemClick;

                //New Releases RecyclerView >> LinearLayoutManager.Horizontal
                NewReleasesSoundAdapter = new HSoundAdapter(Activity)
                {
                    SoundsList = new ObservableCollection <SoundDataObject>()
                };
                NewReleasesSoundAdapter.OnItemClick += NewReleasesSoundAdapterOnOnItemClick;

                // Recently Played RecyclerView >> LinearLayoutManager.Horizontal
                RecentlyPlayedSoundAdapter = new HSoundAdapter(Activity)
                {
                    SoundsList = new ObservableCollection <SoundDataObject>()
                };
                RecentlyPlayedSoundAdapter.OnItemClick += RecentlyPlayedSoundAdapterOnOnItemClick;

                // Popular RecyclerView >> LinearLayoutManager.Horizontal
                PopularSoundAdapter = new HSoundAdapter(Activity)
                {
                    SoundsList = new ObservableCollection <SoundDataObject>()
                };
                PopularSoundAdapter.OnItemClick += PopularSoundAdapterOnOnItemClick;

                ArtistsAdapter              = new ArtistsAdapter(Activity);
                ArtistsAdapter.OnItemClick += ArtistsAdapterOnOnItemClick;
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
            }
        }