protected override void OnMoveOffChild(int i) { MuPageView pageView = (MuPageView)Adapter.GetItem(i); if (pageView != null) { pageView.MoveOffScreen(); } base.OnMoveOffChild(i); }
protected override void OnChildSetup(int i, View v) { base.OnChildSetup(i, v); if (i == this.DisplayedViewIndex && this.DisplayedView != null) { MuPageView pageView = (MuPageView)this.DisplayedView; pageView.OnScreen = true; //pageView.MoveToScreen(); } }
protected override void OnMoveToChild(int i) { base.OnMoveToChild(i); if (_onPageSelected != null) { _onPageSelected(); } MuPageView pageView = (MuPageView)this.DisplayedView; if (pageView != null) { pageView.MoveToScreen(); } }
public override View GetView(int position, View convertView, ViewGroup parent) { Log.Debug(TAG, "getView"); MuPageView pageView; if (convertView == null) { try { if (mSharedHqBm == null || mSharedHqBm.Width != parent.Width || mSharedHqBm.Height != parent.Height) { mSharedHqBm = Bitmap.CreateBitmap(parent.Width, parent.Height, Bitmap.Config.Argb8888); } } catch (Java.Lang.Error er) { mSharedHqBm = null; string tag = TAG + " - GetView"; if (er.Message != null) { Log.Error(tag, er.Message); } } try { pageView = new MuPageView(mContext, mFilePickerSupport, mCore, new Point(parent.Width, parent.Height), mSharedHqBm, _doc, _docView); } catch (Java.Lang.OutOfMemoryError ex) { Log.Error(TAG, ex.Message); GC.Collect(); pageView = new MuPageView(mContext, mFilePickerSupport, mCore, new Point(parent.Width, parent.Height), mSharedHqBm, _doc, _docView); } } else { pageView = (MuPageView)convertView; } PointF pageSize = mPageSizes.Get(position); if (pageSize != null) { // We already know the page size. Set it up // immediately pageView.SetPage(position, pageSize); } else { // Page size as yet unknown. Blank it for now, and // start a background task to find the size pageView.Blank(position); /*Android.OS.AsyncTask<Void,Void,PointF> sizingTask = new SafeAsyncTask<Void,Void,PointF>() { * * protected override PointF doInBackground(Void... arg0) { * return core.getPageSize(position); * } * * @Override * protected void onPostExecute(PointF result) { * if (isCancelled()) { * return; * } * // We now know the page size * mPageSizes.put(position, result); * // Check that this view hasn't been reused for * // another page since we started * if (pageView.getPage() == position) * pageView.setPage(position, result); * } * };*/ SizingTask task = new SizingTask(mCore, position, pageView); task.Execute(); } _pages.Put(position, pageView); return(pageView); }
public SizingTask(MuPDFCore core, int index, MuPageView pageView) : base() { this.Core = core; this.index = index; this.PageView = pageView; }