示例#1
0
  private Bitmap extentSnapshot(int doc, int gs, int spaceAround, boolean transparent) {
    final LogHelper log = new LogHelper();
    final Rect extent = getDisplayExtent();

    if (!extent.isEmpty()) {
      extent.inset(-spaceAround, -spaceAround);
      extent.intersect(0, 0, mView.getView().getWidth(), mView.getView().getHeight());
    }
    if (extent.isEmpty()) {
      return null;
    }

    final Bitmap viewBitmap = mView.snapshot(doc, gs, transparent);
    if (viewBitmap == null) {
      return null;
    }

    if (extent.width() == mView.getView().getWidth()
        && extent.height() == mView.getView().getHeight()) {
      log.r(viewBitmap.getByteCount());
      return viewBitmap;
    }

    final Bitmap realBitmap =
        Bitmap.createBitmap(viewBitmap, extent.left, extent.top, extent.width(), extent.height());

    viewBitmap.recycle();
    log.r(realBitmap.getByteCount());
    return realBitmap;
  }
示例#2
0
 @Override
 public void close() {
   if (mView != null) {
     mView.onPause();
     mView.stop();
     if (mView.getView() != null) {
       final ViewGroup parent = (ViewGroup) mView.getView().getParent();
       if (parent != null) parent.removeAllViews();
     }
     mView = null;
   }
 }
示例#3
0
 @Override
 public void onDestroy() {
   final Context context = getContext();
   for (BaseGraphView view : ViewUtil.views()) {
     if (view.getView().getContext() == context) {
       view.stop();
     }
   }
 }
示例#4
0
  @Override
  public boolean onResume() {
    Log.d(TAG, "onResume");
    final Context context = getContext();
    boolean ret = false;

    for (BaseGraphView view : ViewUtil.views()) {
      if (view.getView().getContext() == context) {
        ret = view.onResume() || ret;
      }
    }
    return ret;
  }
示例#5
0
 @Override
 public Context getContext() {
   return mView != null ? mView.getView().getContext() : null;
 }
示例#6
0
 @Override
 public View getView() {
   return mView != null ? mView.getView() : null;
 }