2017-07-19 83 views
0

我有:相机意图后有新的活动

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_foto); 

    Intent intentFotocamera = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE); 
    String timeStamp = new SimpleDateFormat("yyyyMMdd_HHmmss").format(new Date()); //creo un timestamp univoco 

    File imagesFolder = new File(Environment.getExternalStorageDirectory(), "MyImages"); 
    imagesFolder.mkdirs(); //creo un nuovo album 

    File image = new File(imagesFolder, "QR_" + timeStamp + ".png"); //concateno 
    Uri uriSavedImage = Uri.fromFile(image); 

    intentFotocamera.putExtra(MediaStore.EXTRA_OUTPUT, uriSavedImage); 
    startActivityForResult(intentFotocamera, CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE); 
} 

现在,当用户按下照片确认按钮(然后保存在本地),我想创建一个新的活动,因为我想打印照片在我的应用程序。

如何创建新的活动?

+0

看到这个[相机活动教程(https://www.androidhive.info/2013/09/android-working-with-camera-api/) – Lal

回答

2

在override方法onActivityResult()中启动新的活动。

https://developer.android.com/training/basics/intents/result.html

例子:

@Override 
protected void onActivityResult(int requestCode, int resultCode, Intent 
data) { 
// Check which request we're responding to 
if (requestCode == CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE) { 
    // Make sure the request was successful 
    if (resultCode == RESULT_OK) { 
     // The user picked a contact. 
     // The Intent's data Uri identifies which contact was selected. 

     // Do something with the contact here (bigger example below) 
    } 
} 
} 
+0

什么是'PICK_CONTACT_REQUEST'? – Lal

+1

他应该接受'CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE'这个答案。 –

+0

我刚刚使用谷歌的例子,忘记编辑该部分。 https://developer.android.com/training/basics/intents/result.html – MrBovineJoni

1

是否要打开新的活动,并显示其最近拍摄的照片?

这里是你如何做到这一点。

@Override 
protected void onActivityResult(int requestCode, int resultCode, Intent data) { 
    try { 
     super.onActivityResult(requestCode, resultCode, data); 

     if (requestCode == REQUEST_CODE && resultCode == RESULT_OK) { 

        "handle here" 

     } 
    } catch (Exception ex) { 

    } 

} 
+0

这不是一个答案!评论应发布在评论部分 –