コード例 #1
0
        public void Redraw()
        {
            if (annTask != null && annTask.status == AsyncTask.Status.Running)
            {
                return;
            }

            settingsChanged = false;
            AnnTask.UpdateVars(this);
            int currentTop = linesRecyclerView.GetChildAt(0).Top;

            annTask = new AnnTask(this, AnnTask.TASK_ANNOTATE, annoMode, curPos, startPos, endPos, 5, 0, lines, new List <object>(), pastedText, textLen, openedFile, testView, UpdateLinesAnnInterface, true, mBookmarks);
            annTask.RedrawLines(linesRecyclerView);
            startPos = annTask.startPos;
            endPos   = annTask.endPos;

            linesAdapter.NotifyDataSetChanged();

            if (startPos > 0)
            {
                linesAdapter.ShowHeader = true;
            }

            RecyclerView ll = linesRecyclerView;

            ll.ClearFocus();
            ll.Post(() =>
            {
                ll.RequestFocusFromTouch();
                ((LinearLayoutManager)ll.GetLayoutManager()).ScrollToPositionWithOffset(1, currentTop);
                ll.RequestFocus();
            });
        }
コード例 #2
0
        protected override void OnCreate(Bundle savedInstanceState)
        {
            base.OnCreate(savedInstanceState);

            System.Console.WriteLine("AnnotationActivity >> OnCreate");

            app = this;

            try
            {
                if (FindViewById(Resource.Id.lines) != null)
                {
                    AnnTask.UpdateVars(this);
                    CheckIsShared();

                    return;
                }

                curFilePath           = "";
                isFirstAnnotation     = true;
                isFirstFileAnnotation = true;

                PreferenceManager.SetDefaultValues(this, Resource.Xml.preferences, false);
                sharedPrefs = PreferenceManager.GetDefaultSharedPreferences(this);

                SetContentView(Resource.Layout.MainActivity);
                mToolbar = (Toolbar)FindViewById(Resource.Id.toolbar); // Attaching the layout to the toolbar object
                SetSupportActionBar(mToolbar);
                SupportActionBar.SetDisplayShowHomeEnabled(true);
                SupportActionBar.SetIcon(Resource.Drawable.logo_toolbar);

                wPopup   = new WordPopup(this);
                testView = new LineView(this);
                testView.UpdateVars();

                lines             = new List <List <object> >();
                linesRecyclerView = (CustomRecyclerView)FindViewById(Resource.Id.lines);
                linesRecyclerView.mMainActivity = this;
                linesLayoutManager = new LinearLayoutManager(this);
                linesRecyclerView.SetLayoutManager(linesLayoutManager);
                linesAdapter = new AnnListAdapter(this, this.lines, linesRecyclerView, wPopup);
                linesRecyclerView.SetAdapter(linesAdapter);
                defaultItemAnimator = linesRecyclerView.GetItemAnimator();

                linesRecyclerView.AddOnScrollListener(new RecyclerViewOnScrollListener(this));

                mBookmarks      = new List <Bookmark>();
                mFoundBookmarks = new List <Bookmark>();
            }
            catch (Exception e)
            {
                Toast.MakeText(this, "Error: " + e.Message, ToastLength.Long).Show();
            }
        }