تبدیل یک عکس به آرایه ای از جنس بایت (Byte Array) (یعنی byte[]) و سپس انجام معکوس این روند و نمایش عکس حاصل در یک ImageView ، در برنامه نویسی اندروید
در این مبحث قصد داریم که یک عکس را از پوشه های drawable فراخوانی کرده و تبدیل به آرایه ای از جنس بایت (Byte Array) (یعنی byte[]) کنیم، سپس آرایه را به عکس (از نوع Bitmap) تبدیل کرده و سپس نتیجه را در یک ImageView نمایش بدهیم. برای این منظور، کدهای زیر را می نویسیم :
Bitmap bm = BitmapFactory.decodeResource(getResources(), R.drawable.ic_launcher);
ByteArrayOutputStream baos = new ByteArrayOutputStream();
bm.compress(Bitmap.CompressFormat.PNG, 100, baos); // PNG (you can choose JPEG)
byte[] b = baos.toByteArray();
ByteArrayInputStream bais = new ByteArrayInputStream(b);
Bitmap bm2= BitmapFactory.decodeStream(bais);
ImageView iv = (ImageView) findViewById(R.id.imageView1);
iv.setImageBitmap(bm2);
ByteArrayOutputStream baos = new ByteArrayOutputStream();
bm.compress(Bitmap.CompressFormat.PNG, 100, baos); // PNG (you can choose JPEG)
byte[] b = baos.toByteArray();
ByteArrayInputStream bais = new ByteArrayInputStream(b);
Bitmap bm2= BitmapFactory.decodeStream(bais);
ImageView iv = (ImageView) findViewById(R.id.imageView1);
iv.setImageBitmap(bm2);
نام عکس را برابر ic_launcher در نظر گرفته ایم. همچنین id مربوط به ImageView را برابر imageView1 در نظر گرفته ایم.
نظرات 1 1 0
حسین
۱۳۹۹/۱۲/۲۷
۱۶:۳۹
موقع اجرای کد برنامه فریز میشه و بعد از مدتی فورس کلوز میده بدون هیچ اروری