startActivityForResult的用法,以及intent传递图片


开启startActivityForResult.

1                 Intent intent = new Intent();
2                 intent.setClass(MainActivity.this, MipcaActivityCapture.class);
3                 intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
4                 startActivityForResult(intent, SCANNIN_GREQUEST_CODE);

在此类中添加onActivityResult接收返回信息。

 1     @Override
 2     protected void onActivityResult(int requestCode, int resultCode, Intent data) {
 3         super.onActivityResult(requestCode, resultCode, data);
 4         switch (requestCode) {
 5         case SCANNIN_GREQUEST_CODE:
 6             if(resultCode == RESULT_OK){
 7                 Bundle bundle = data.getExtras();
 8                 //显示扫描到的内容
 9                 mTextView.setText(bundle.getString("result"));
10                 //接收返回图片,并且设置到ImageView里面
11                 mImageView.setImageBitmap((Bitmap) data.getParcelableExtra("bitmap"));
12             }
13             break;
14         }
15     }    

在MipcaActivityCapture类中调用返回事件,以及数据。

            Intent resultIntent = new Intent();
            Bundle bundle = new Bundle();
            bundle.putString("result", resultString);
            bundle.putParcelable("bitmap", bitmap);
            resultIntent.putExtras(bundle);
            this.setResult(RESULT_OK, resultIntent);

搞定。

在这里注意,如果intent传递图片的时候,需要用到putParcelable。

在接收的时候,直接用getParcelableExtra("bitmap")获取bitmap对象即可。

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM