Advertisement
Guest User

Untitled

a guest
Apr 24th, 2014
33
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.58 KB | None | 0 0
  1. using (var bmp = ImageResizer.DecodeSampledBitmapFromResource (Resources,
  2. Resource.Drawable.exampleImage, Resources.DisplayMetrics.WidthPixels / 2,
  3. (int)((Resources.DisplayMetrics.WidthPixels / 2) * _aspect)))
  4. {
  5. _btnFoo.SetImageBitmap (bmp);
  6. bmp.Dispose ();
  7. }
  8.  
  9. public static class ImageResizer
  10. {
  11. public static int CalculateInSampleSize(BitmapFactory.Options options,
  12. int reqWidth, int reqHeight)
  13. {
  14. // Raw height and width of image
  15. var height = (float)options.OutHeight;
  16. var width = (float)options.OutWidth;
  17. var inSampleSize = 1D;
  18. if (height > reqHeight || width > reqWidth)
  19. {
  20. inSampleSize = width > height
  21. ? height/reqHeight
  22. : width/reqWidth;
  23. }
  24. return (int) inSampleSize;
  25. }
  26.  
  27. public static Bitmap DecodeSampledBitmapFromResource(Resources res, int resId,
  28. int reqWidth, int reqHeight)
  29. {
  30. var options = new BitmapFactory.Options {
  31. InJustDecodeBounds = true,
  32. };
  33.  
  34. using (var dispose = BitmapFactory.DecodeResource(res, resId, options)) {
  35. }
  36.  
  37. options.InSampleSize = CalculateInSampleSize(options, reqWidth, reqHeight);
  38. options.InJustDecodeBounds = false;
  39. return BitmapFactory.DecodeResource(res, resId, options);
  40. }
  41. }
  42.  
  43. I/dalvikvm-heap( 312): Clamp target GC heap from 132.902MB to 128.000MB
  44. D/dalvikvm( 312): GC_FOR_ALLOC freed 1852K, 4% free 126271K/130904K, paused 25ms, total 25ms
  45. I/dalvikvm-heap( 312): Forcing collection of SoftReferences for 3134212-byte allocation
  46. I/dalvikvm-heap( 312): Clamp target GC heap from 132.894MB to 128.000MB
  47. D/dalvikvm( 312): GC_BEFORE_OOM freed 10K, 4% free 126261K/130904K, paused 29ms, total 29ms
  48. E/dalvikvm-heap( 312): Out of memory on a 3134212-byte allocation.
  49. I/dalvikvm( 312): "main" prio=5 tid=1 RUNNABLE
  50. I/dalvikvm( 312): | group="main" sCount=0 dsCount=0 obj=0x413eeb38 self=0x413ddd78
  51. I/dalvikvm( 312): | sysTid=312 nice=0 sched=0/0 cgrp=apps handle=1074968028
  52. I/dalvikvm( 312): | state=R schedstat=( 0 0 0 ) utm=246 stm=59 core=2
  53. I/dalvikvm( 312): at android.graphics.BitmapFactory.nativeDecodeAsset(Native Method)
  54. I/dalvikvm( 312): at android.graphics.BitmapFactory.decodeStream(BitmapFactory.java:596)
  55. I/dalvikvm( 312): at android.graphics.BitmapFactory.decodeResourceStream(BitmapFactory.java:444)
  56. I/dalvikvm( 312): at android.graphics.BitmapFactory.decodeResource(BitmapFactory.java:472)
  57. I/dalvikvm( 312): at guild.android.screens.CouponItemScreen.n_onTouch(Native Method)
  58. I/dalvikvm( 312): at guild.android.screens.CouponItemScreen.onTouch(CouponItemScreen.java:47)
  59. I/dalvikvm( 312): at android.view.View.dispatchTouchEvent(View.java:7495)
  60. I/dalvikvm( 312): at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2291)
  61. I/dalvikvm( 312): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1985)
  62. I/dalvikvm( 312): at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2291)
  63. I/dalvikvm( 312): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1985)
  64. I/dalvikvm( 312): at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2291)
  65. I/dalvikvm( 312): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1985)
  66. I/dalvikvm( 312): at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2291)
  67. I/dalvikvm( 312): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1985)
  68. I/dalvikvm( 312): at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2291)
  69. I/dalvikvm( 312): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1985)
  70. I/dalvikvm( 312): at com.android.internal.policy.impl.PhoneWindow$DecorView.superDispatchTouchEvent(PhoneWindow.java:2240)
  71. I/dalvikvm( 312): at com.android.internal.policy.impl.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1535)
  72. I/dalvikvm( 312): at android.app.Activity.dispatchTouchEvent(Activity.java:2466)
  73. I/dalvikvm( 312): at com.android.internal.policy.impl.PhoneWindow$DecorView.dispatchTouchEvent(PhoneWindow.java:2188)
  74. I/dalvikvm( 312): at android.view.View.dispatchPointerEvent(View.java:7689)
  75. I/dalvikvm( 312): at android.view.ViewRootImpl.deliverPointerEvent(ViewRootImpl.java:3794)
  76. I/dalvikvm( 312): at android.view.ViewRootImpl.deliverInputEvent(ViewRootImpl.java:3678)
  77. I/dalvikvm( 312): at android.view.ViewRootImpl.doProcessInputEvents(ViewRootImpl.java:4916)
  78. I/dalvikvm( 312): at android.view.ViewRootImpl.enqueueInputEvent(ViewRootImpl.java:4895)
  79. I/dalvikvm( 312): at android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent(ViewRootImpl.java:4993)
  80. I/dalvikvm( 312): at android.view.InputEventReceiver.dispatchInputEvent(InputEventReceiver.java:185)
  81. I/dalvikvm( 312): at android.os.MessageQueue.nativePollOnce(Native Method)
  82. I/dalvikvm( 312): at android.os.MessageQueue.next(MessageQueue.java:125)
  83. I/dalvikvm( 312): at android.os.Looper.loop(Looper.java:124)
  84. I/dalvikvm( 312): at android.app.ActivityThread.main(ActivityThread.java:5279)
  85. I/dalvikvm( 312): at java.lang.reflect.Method.invokeNative(Native Method)
  86. I/dalvikvm( 312): at java.lang.reflect.Method.invoke(Method.java:511)
  87. I/dalvikvm( 312): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1102)
  88. I/dalvikvm( 312): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:869)
  89. I/dalvikvm( 312): at dalvik.system.NativeStart.main(Native Method)
  90. I/dalvikvm( 312):
  91. D/skia ( 312): --- allocation failed for scaled bitmap
  92. D/dalvikvm(15696): GC_CONCURRENT freed 2085K, 39% free 14681K/23884K, paused 2ms+13ms, total 40ms
  93.  
  94. android:largeHeap="true"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement