Ejemplo n.º 1
0
        private void HandleTopNav()
        {
            List <ISpanned> articles;

            if (library == Library.Bible)
            {
                // Chapter numbers only
                articles = primaryChapters.Select(a => Html.FromHtml(a.ToString().Split(new[] { ' ' }).Last())).ToList();
            }
            else
            {
                // Article titles
                articles = primaryChapters;
            }

            int width = (int)(App.STATE.Activity.Resources.GetDimension(Resource.Dimension.bible_nav_bible_book_grid_width) / App.STATE.Activity.Resources.DisplayMetrics.Density);

            if (library != Library.Bible)
            {
                if (width > 100)
                {
                    gridView.NumColumns = 3;
                }
                else
                {
                    gridView.NumColumns = 1;
                }
                gridView.StretchMode = StretchMode.StretchColumnWidth;
            }
            else
            {
                gridView.NumColumns  = -1;
                gridView.StretchMode = StretchMode.NoStretch;
            }

            gridView.Adapter = new ArticleButtonAdapter(Activity, articles.ToArray());

            int index = GetNavigationIndex();

            if (Build.VERSION.SdkInt >= BuildVersionCodes.Honeycomb)
            {
                gridView.SetItemChecked(index, true);
            }
            gridView.SetSelection(index);
        }
Ejemplo n.º 2
0
        public void ShowChapterPrompt()
        {
            string title = gridViewTitle.Text;

            LayoutInflater       inflater = (LayoutInflater)Activity.GetSystemService(Context.LayoutInflaterService);
            View                 view     = inflater.Inflate(Resource.Layout.DialogChapterSelect, null);
            HeaderFooterGridView grid     = view.FindViewById <HeaderFooterGridView>(Resource.Id.chapterSelectGridView);

            grid.SetSelector(Android.Resource.Color.Transparent);
            if (Build.VERSION.SdkInt >= BuildVersionCodes.Honeycomb)
            {
                grid.ChoiceMode = ChoiceMode.Single;
            }

            List <ISpanned> articles;

            if (library == Library.Bible)
            {
                // Chapter numbers only
                articles         = primaryChapters.Select(a => Html.FromHtml(a.ToString().Split(new[] { ' ' }).Last())).ToList();
                grid.StretchMode = StretchMode.NoStretch;
                grid.NumColumns  = -1;
            }
            else if (library == Library.Insight)
            {
                // Article titles
                articles         = primaryChapters;
                grid.StretchMode = StretchMode.StretchColumnWidth;
                grid.NumColumns  = 2;
            }
            else
            {
                // Article titles
                articles         = primaryChapters;
                grid.StretchMode = StretchMode.StretchColumnWidth;
                grid.NumColumns  = 1;
            }

            // If one article, do nothing
            if (articles.Count == 1)
            {
                return;
            }

            MaterialDialog dialog = null;

            grid.Adapter    = new ArticleButtonAdapter(Activity, articles.ToArray());
            grid.ItemClick += SelectChapter;
            grid.ItemClick += delegate
            {
                dialog.Dismiss();
            };

            int index = GetNavigationIndex();

            if (Build.VERSION.SdkInt >= BuildVersionCodes.Honeycomb)
            {
                grid.SetItemChecked(index, true);
            }
            grid.SetSelection(index);

            MaterialDialog.Builder popup = new MaterialDialog.Builder(Activity);
            popup.SetCustomView(view, false);
            popup.SetTitle(title.Replace("\n", "<br/>").Split('<')[0]);
            popup.SetNegativeText("X");

            dialog = popup.Show();
        }