我有两组代码。两组都需要相同的名称onActivityResult
,但我不确定如何在不冲突的情况下将它们组合在一起。
这两组代码是:
第一个设置:要求用户单击无图像ImageView
从其移动设备中选择图像,然后它将显示他们选择的图像
第二组:要求用户单击“按钮”来扫描条形码。它将打开一个照相机供用户扫描条形码,扫描后将显示条形码中的数字。
这是两组代码:
第一组代码:
@Override
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
super.onActivityResult(requestCode, resultCode, data);
// Check for Image Request , If user get the image is ok, and the image is not null
if(requestCode == PICK_IMAGE_REQUEST && resultCode == RESULT_OK && data != null && data.getData() != null){
//Put the image data into this mImageUri
mImageUri = data.getData();
//This line take the data from mImageUri and load into mImageView so basically changing the uri to image
Picasso.with(this).load(mImageUri).into(ItemORFoodImg);
}
}
第二组代码:
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data){
final IntentResult result = IntentIntegrator.parseActivityResult(requestCode,resultCode,data);
if(result != null){
if(result.getContents() == null){
Toast.makeText(this, "Result Not Found", Toast.LENGTH_SHORT).show();
}
else{
AlertDialog.Builder alertdialogbuilder = new AlertDialog.Builder(this);
alertdialogbuilder.setMessage(result.getContents()+"\n\nWant to add as new item?");
alertdialogbuilder.setTitle("ResultScanned");
alertdialogbuilder.setPositiveButton("Yes", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
String barcode = result.getContents();
Intent intent = new Intent(BarcodeTest.this,AddNewItem.class);
intent.putExtra(BarID, barcode);
startActivity(intent);
}
});
alertdialogbuilder.setNegativeButton("No", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
finish();
}
});
AlertDialog alertDialog = alertdialogbuilder.create();
alertDialog.show();
}
}
else {
super.onActivityResult(requestCode,resultCode,data);
}
}
有人可以帮助我在不冲突的情况下结合这两个代码段吗?
答案 0 :(得分:1)
您可以使用IntentService。 您可以创建两个Java类,一个用于插入代码,一个用于QR码。 当按下ImageView时,将插入代码类别,当按下按钮时,将其转到QR代码类别。 然后将数据传递给您的活动。 点击此链接 https://developer.android.com/reference/android/app/IntentService